春天可以自動地蠶豆。要啟用它,請?jiān)?lt; bean>中定義“autowire"屬性。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="byName" />
彈簧有五種自動接線模式。
客戶Java bean。
package com.m.o2fo.common; public class Customer { private Person person; public Customer(Person person) { this.person = person; } public void setPerson(Person person) { this.person = person; } }
Person Java bean
package com.m.o2fo.common; public class Person { }
這是默認(rèn)模式,我們需要通過“ref"屬性連接Java bean。
<bean id="customer" class="com.m.o2fo.common.Customer"> <property name="person" ref="person" /> </bean> <bean id="person" class="com.m.o2fo.common.Person" />
以下代碼將autowire byName添加到bean聲明中。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="byName" />
因?yàn)椤皃erson"bean的名稱與“customer"bean的名稱相同“person"屬性,Spring將通過setPerson(Person person)方法自動連接。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="byName" /> <bean id="person" class="com.m.o2fo.common.Person" />
以下xml配置將自動連線類型聲明為byType。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="byType" />
因?yàn)椤皃erson"bean的數(shù)據(jù)類型與數(shù)據(jù)類型相同“客戶"bean的屬性person對象,Spring將通過方法setPerson(Person person)自動連接它。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="byType" /> <bean id="person" class="com.m.o2fo.common.Person" />
以下代碼將bean的自動連線類型聲明為構(gòu)造函數(shù)
。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="constructor" />
“person"bean的數(shù)據(jù)類型與“customer"bean的屬性(Person對象)中的構(gòu)造函數(shù)參數(shù)數(shù)據(jù)類型相同,Spring將通過構(gòu)造方法 - “public Customer(Person person)"自動連接它。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="constructor" /> <bean id="person" class="com.m.o2fo.common.Person" />
以下代碼顯示如何使用autodetect autowire。如果找到構(gòu)造函數(shù),則使用“constructor"; 否則,使用“byType"。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="autodetect" dependency-check="objects />
由于在“Customer"類中有一個構(gòu)造函數(shù),Spring將通過構(gòu)造方法 - “public Customer(Person person)"自動連接它。
<bean id="customer" class="com.m.o2fo.common.Customer" autowire="autodetect" /> <bean id="person" class="com.m.o2fo.common.Person" />
更多建議: