1.构造方法注入
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" > 3 <beans> 4 <bean id="person" class="com.thief.demo.Person"> 5 <constructor-arg value="1"/> 6 <constructor-arg value="Tom"/> 7 <constructor-arg ref="friend"/> 8 </bean> 9 10 <bean id="friend" class="com.thief.demo.Friend"> 11 <constructor-arg value="Jack"/> 12 </bean> 13 </beans>
2.setter方法注入
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" > <beans> <bean id="person" class="com.thief.demo.Person"> <property name="id" value="1"/> <property name="name" value="Tom"/> <property name="friend" ref="friend"/> </bean> <bean id="friend" class="com.thief.demo.Friend"> <property name="name" value="Jack"/> </bean> </beans>
3.<property>和<constructor-arg>中可用的配置项。
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" > 3 <beans> 4 <!-- <value>:为对象注入String类型、基本数据类型和它们的包装器类型的数据 --> 5 <!-- 示例一 --> 6 <bean id="person" class="com.thief.demo.Person"> 7 <constructor-arg> 8 <value>11111</value> 9 </constructor-arg> 10 <property name="id"> 11 <value>11111</value> 12 </property> 13 </bean> 14 <!-- 示例二 --> 15 <bean id="person2" class="com.thief.demo.Person"> 16 <constructor-arg value="11111"/> 17 <property name="id" value="11111"/> 18 </bean> 19 20 21 <!-- <ref>:引用容器中其他的对象实例 --> 22 <bean id="person2" class="com.thief.demo.Person"> 23 <constructor-arg ref="friend"/> 24 <property name="friend" ref="friend"/> 25 </bean> 26 <bean id="friend" class="com.thief.demo.Friend"> 27 <property name="name" value="Jack"/> 28 </bean> 29 30 31 <!-- 内部<bean>:如果所依赖的对象只有当前一个对象引用,或者某个对象定义不想其他对象通过<ref>引用到它,这时候就可以使用内部<bean> --> 32 <bean id="person3" class="com.thief.demo.Person"> 33 <constructor-arg> 34 <bean class="com.thief.demo.Friend"/> 35 </constructor-arg> 36 </bean> 37 38 39 <!-- <list>:<list>对应注入对象类型为java.util.List及其子类或者数组类型的依赖对象 --> 40 <bean id="person4" class="com.thief.demo.Person"> 41 <property name="list"> 42 <list> 43 <value>11111</value> 44 <ref bean="friend"/> 45 <bean class="com.thief.demo.Friend"/> 46 </list> 47 </property> 48 </bean> 49 50 51 <!-- <set>:<set>对应注入Java Collection中类型为java.util.Set或者其子类的依赖对象 --> 52 <bean id="person5" class="com.thief.demo.Person"> 53 <property name="set"> 54 <set> 55 <value>11111</value> 56 <ref bean="friend"/> 57 <bean class="com.thief.demo.Friend"/> 58 </set> 59 </property> 60 </bean> 61 62 63 <!-- <map>:<map>对应注入对象类型为java.util.Map或者其子类类型的依赖对象 --> 64 <bean id="person6" class="com.thief.demo.Person"> 65 <property name="map"> 66 <map> 67 <entry key="id"> 68 <value>11111</value> 69 </entry> 70 <entry key="friend"> 71 <ref bean="friend"/> 72 </entry> 73 </map> 74 </property> 75 </bean> 76 77 78 <!-- <props>: <props>对应配置类型为java.util.Properties的对象依赖 --> 79 <bean id="person7" class="com.thief.demo.Person"> 80 <property name="props"> 81 <props> 82 <prop key="id">11111</prop> 83 <prop key="name">Tom</prop> 84 </props> 85 </property> 86 </bean> 87 </beans>