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>
View Code

相关文章: