2013-08-01 75 views
1

我是Spring的新手,正在開發一個由Spring組成的項目。 它得到了這段代碼的xml文件爲什麼在這種情況下沒有相應的設置方法?

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

的Java類內,裏面已經得到了這一段代碼

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



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


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

請讓我知道爲什麼有是名集都沒法對於StreamClient類,但已獲得QuoteClient的相應設置方法。

回答

0

由於您正在使用註釋驅動的自動裝配bean,因此您不需要禁止任何setter(這些設置使用反射)。 Spring DI框架甚至不需要setQuotesClient來注入這2個bean實例。 PS:從3.0版春天開始,你可以開始使用@Inject而不是@Autowired

Check: How does Spring @Autowired work

0

我認爲setter方法寫錯了。 刪除該setter並測試該應用程序。它應該工作。

相關問題