我對spring有點新,我正在開發一個spring3 MVC項目。我已閱讀關於春季IoC和DI。基本上它支持構造函數和setter DI。但我想使用接口注入。我搜索了整個谷歌,通過各種例子,但沒有找到任何令人信服的例子。接口注入beans.xml
我有一個Interface
說IntA
及其執行class IntAImpl
。我想在beans.xml
中定義它的關係,如IntA A = new IntAImpl();
,然後我可以直接注入bean IntA
。
對此有何想法?
我對spring有點新,我正在開發一個spring3 MVC項目。我已閱讀關於春季IoC和DI。基本上它支持構造函數和setter DI。但我想使用接口注入。我搜索了整個谷歌,通過各種例子,但沒有找到任何令人信服的例子。接口注入beans.xml
我有一個Interface
說IntA
及其執行class IntAImpl
。我想在beans.xml
中定義它的關係,如IntA A = new IntAImpl();
,然後我可以直接注入bean IntA
。
對此有何想法?
像這樣:
@Autowired(value = "intA")
public class IntAImpl implements IntA {
}
嗯,我知道了什麼我正在尋找... 我有3個班爲IntA, IntAImpl, and Service
(如名稱所示,IntA
是interface
,IntAImpl
是其實現類和service
類呼叫IntA
類方法)
我創建了bean
爲IntAImpl
在beans.xml
。 然後我注入IntA
豆在我的服務類,這樣
IntA = (IntA)context.getBean("IntAImpl");
我beans.xml
是這樣
<bean id="IntAImpl" class="com.IntAImpl" autowire="byType"></bean>
所以我這是怎麼實現的接口注入
(可能我的問題可能會誤導人,對不起, )
非常好,但你仍然努力工作。你的服務不應該要求上下文來幫助你;它會做到這一點,如果你自動連線。更少的代碼,更多的春天。 – duffymo
它會工作,如果我autowire它?我認爲自動裝配類型將工作雖然 – vipul12389
自動連接它的名稱將是我的首選項。 – duffymo
我該如何在其他類中使用?我有一個服務類,在那裏我實例化IntA,我如何定義這個關係?那beans.xml呢?有沒有改變呢? – vipul12389
將它連接到每個需要它的類。您必須告訴您的應用上下文XML使用上下文配置掃描。這是用於自動裝配的更新的註釋樣式。 App上下文XML是Spring 1.0;現在你有一個選擇。如果你調用new,那個實例不受Spring的控制。你必須自動連線並讓Spring bean工廠實例化它。 – duffymo
好吧,我不知道這一點。我不知道這種自動裝配模式。 – vipul12389