2017-10-17 1 views
0

저는 스프링 프레임 워크를 처음 사용합니다. bean 정의가 Java 코드에서 이미 정의 된 기존의 싱글 톤을 참조해야하는 상황을 보았습니다.스프링 프레임 워크 빈은 자바 코드에 정의 된 싱글 톤 인스턴스를 의미합니다.

좀 더 자세하게 설명하면 Foo 클래스의 싱글 톤 (sFoo)은 제 3 자 jar 파일에 정의되어 있습니다. 그리고 Foo는 공장 API를 가지고 있지 않습니다. Plus Foo는 sFoo와 동일한 매개 변수로 인스턴스를 만드는 것을 금지합니다. 그래서 Foo 클래스의 factory API가 없어서 (싱글 톤 범위의) bean을 선언 할 방법이없는 것 같습니다.

다른 bean 정의에서 sFoo를 참조해야합니다.

sFoo를 bean 정의 XML 파일에서 참조 할 수있는 방법이 있습니까? 사전에

감사합니다, 프랭크

답변

0

구성 클래스에서 푸의 콩을 만들고 참조 콩만을

@Configuration 
public class ConfigClass { 
    @Bean 
    public Foo foo(){ 
     //This will ensure one object of Foo is created 
     return new Foo(); 
    } 
} 

@Component or @Service or any Spring stereotype annotation 
public OtherClass{ 

    @Autowired 
    Foo foo; //This is the Singleton instance created in ConfigClass 
} 
관련 문제