2013-08-01 3 views
1

저는 Spring을 처음 사용하고 Spring으로 구성된 프로젝트에서 작업하고 있습니다. 그것은이이 경우 해당 설정 메소드가없는 이유는 무엇입니까?

@Autowired 
@Qualifier("streamClient") 
private StreamClient sclient; 



@Autowired 
@Qualifier("quotClient") 
private QuoteClient quotesClient; 


public void setQuotesClient(QuoteClient quotesClient) { 
    this.quotesClient = quotesClient; 
} 

이름 세트에 의해 어떤 방법이없는 이유를 알려 주시기 바랍니다이 코드 조각을 가지고 자바 클래스 xml 파일

<bean id="quotClient" class="com..at.client.QuoteClient" scope="singleton" /> 
    <bean id="streamClient" class="com.at.client.StreamClient" scope="singleton" /> 

내부와 내부 코드의 조각을 가지고있다 StreamClient 클래스의 경우, QuoteClient에 대응하는 set 메소드가 있습니다.

답변

0

콩을 주석으로 처리하는 Autowiring을 사용하고 있으므로 리플렉션을 사용하여 금지 명령을 설정할 필요가 없습니다. 심지어 setQuotesClient은 스프링 DI 프레임 워크가 두 개의 빈 인스턴스를 주입하는 데 필요하지 않습니다.

추신 : 봄 버전 3.0부터는 @Autowired 대신 @Inject을 사용할 수 있습니다.

Check: How does Spring @Autowired work

0

은 내가 세터 방법은 실수로 쓴 생각합니다. 해당 설정 도구를 제거하고 응용 프로그램을 테스트하십시오. 작동해야합니다.

관련 문제