配置文件的根元素是beans,每一個組件使用bean元素來定義,bean元素能夠有許多屬性,其中有兩個是必須的:id和class。id表示組件的默認名稱,class表示組件的類型。spring
配置文件的根元素是beans,每一個組件使用bean元素來定義,bean元素能夠有許多屬性,其中有兩個是必須的:id和class。id表示組件的默認名稱,class表示組件的類型。spring
<bean id="renderer" class="com.apress.prospring.ch2.StandardOutMessageRenderer"> <property name="messageProvider"> oracle
<ref local="provider"/> ide
</property> 函數
</bean> it
<bean id="provider"class="com.apress.prospring.ch4.ConfigurableMessageProvider"> <constructor-arg> io
<value>This is a configurable message</value> class
</constructor-arg> 配置
</bean> List
<bean id="provider" lass="com.apress.prospring.ch4.ConfigurableMessageProvider"> <constructor-arg index="0"> 依賴注入
<value>first parameter</value>
</constructor-arg>
<constructor-arg index="1">
<value>second parameter</value>
</constructor-arg>
</bean>
<bean id="constructorConfusion" class="com.apress.prospring.ch4.ConstructorConfusion">
<constructor-arg type="int">
<value>90</value>
</constructor-arg>
</bean>
public class ConstructorConfusion {
public ConstructorConfusion(String someValue) {
System.out.println("ConstructorConfusion(String) called");
}
public ConstructorConfusion(int someValue) {
System.out.println("ConstructorConfusion(int) called");
}
}
注入集合屬性,使用list,map,set和props標籤,分別對應List,Map,Set和Properties:
<bean id="injectCollection" class="com.apress.prospring.ch4.CollectionInjection">
<property name="map">
<map>
<entry key="someValue">
<value>Hello World!</value>
</entry>
<entry key="someBean">
<ref local="oracle"/>
</entry>
</map>
</property>
<property name="props">
<props>
<prop key="firstName">
Rob
</prop>
<prop key="secondName">
Harrop
</prop>
</props>
</property>
<property name="set">
<set>
<value>Hello World!</value>
<ref local="oracle"/>
</set>
</property>
<property name="list">
<list>
<value>Hello World!</value>
<ref local="oracle"/>
</list>
</property>
</bean>