在spring容器內拼湊bean叫作裝配
理論上
XmlBeanFactory
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
XmlWebApplicationContext
基本的xml配置包括如下幾個方面
其中bean的屬性即為bean裡的成員變量
以下是一個例子
<bean
id =
Class =
Singleton =
init
destroy
autowire =
/>
下面是對該標簽裡各個屬性的解釋
Id
Class
Singleton
一個實例
Init
Destroy
Autowire
對於上述的各個屬性
Bean裡的屬性通過<property>標簽來標識
● 簡單類型屬性
<bean id =
<property name =
<value>springTest</value>
</property>
</bean>
● 引用其他bean <bean id =
<bean id =
<bean id =
<property name =
<ref bean =
</property>
</bean>
也可以將<ref>改為 <bean class =
這樣叫做內部bean
● 裝配集合
共有以下幾種集合的裝配
****裝配List和數組****
<property name =
<list>
<value>something</value>
<ref bean =
<value>otherThing</value>
</list>
</property>
****裝配Set****
<property name =
<set>
<value>something</value>
<ref bean =
<value>otherThing</value>
</set>
</property>
****裝配Map****
<property name =
<map>
<entry key =
<value>value
</entry>
<entry key =
<ref bean =
</entry>
</map>
</property>
****裝配Properties****
<property name =
<props>
<prop key =
<prop key =
</props>
</property>
● 設置null
要將一個屬性null
<property name=
假設有如下一個bean
Public class MyBean {
Public MyBean( String arg
}
則可以在xml裡這樣配置該bean
<bean id =
<constructor
<value>springTest</value>
<constructor
<constructor
<ref bean =
<constructor
</bean>
其中的index是用來標識該參數在構造函數裡的位置的
例如
<bean
id =
class =
autowire =
/>
下面是幾種autowire type的說明
● byname
● byType
● constructor
● autodetect
從上面可以看出
其中default
例如配置如下
<beans default
</beans>
自動裝配可能帶來不確定性問題
<bean id =
Autowire =
>
<property name =
<ref bean =
</property>
</bean>
通過這樣的配置
From:http://tw.wingwit.com/Article/program/Java/ky/201311/28414.html