우리는 부두/저지 응용 프로그램을 가지고 있습니다. Guice를 사용하여 DI로 변환합니다. 문제 : Singleton 클래스의 인스턴스가 두 개 이상 필요합니다. catch : 인스턴스의 수는 구성 파일에서 동적으로 결정됩니다. 따라서 다른 인스턴스에 대해 주석을 사용할 수 없습니다.Guice 인젝터에서 하나 이상의 싱글 톤 인스턴스
final InjectedClass instance = injector.getInstance(InjectedClass.class);
이것은 인젝터의 표준 구문입니다. 나는 거기에 Guice Key.class
에서
final InjectedClass instance = injector.getInstance(Key.get(InjectedClass.class, <Annotation>);
을 인스턴스를 얻을 수있는 방법이 있지만 문제는 좀 역동적 인 주석을 미리 정의하지가 필요하다는 것입니다
final String key = getKey();
final InjectedClass instance = injector.getInstance(InjectedClass.class, key);
뭔가를해야합니다.
감사합니다. 솔루션이 아닌 InstancePool을 제안하고 있습니다. 인스턴스의 맵이 필요합니다. 인스턴스간에 차이가 있기 때문에 특정 인스턴스를 주입해야 할 때마다 무작위가 아닌 특정 인스턴스가 필요합니다. 어쨌든, 답변 주셔서 감사합니다. – fiction
@fiction :이 요구 사항이 포함되도록 질문을 편집하십시오. – eiden