一,Bean注入
在Sping中Bean注入有两种,Set注入和构造注入。两种注入方式都需要传入class的完整路径。
A,Set注入
<bean id="" class="">
<property name="">
<value></value>
</property>
//更多属性继续添加property 即可
<bean>
注意
1,使用Set方式注入,需要实体内中有默认的无参构造方法。如果自己定义了有参构造函数,还需要提供无参构造函数,否则出错。
2,使用property 配置的属性必须都要有Set方法。可以使用lombok来实现Set、Get方法。IDEA使用lombok需要打开annotation processing。
B,构造函数注入
<bean id="" class="">
<constructor-arg index="0">
<value></value>
</constructor-arg>
//更多属性继续添加property 即可 注意index的值
<bean>
index表示构造函数中参数的位置,从0开始。
二,Bean的模式
Spring中bean有两种模式,singleton和non-singleton。
1,non-singleton模式,每次获取都是一个新的对象,相当于每次都new一个对象。
2,singleton模式,使用同一个id多次获取,得到都是同一个对象。singleton针对的是id。两个不同的id获取到的一定是两个不同的对象,哪怕它们两个是同一个类的对象。
3,spring中Bean的默认模式是singleton。
三,List、Map、Properties的注入
1,List注入
<bean name="" class= "">
<property name="">
<list>
<value></value>
<value></value>
<value></value>
</list>
</property>
</bean>
2,Map注入
<bean name="" class="">
<property name="">
<map>
<entry key="">
<value></value>
</entry>
<entry key="">
<value></value>
</entry>
</map>
</property>
</bean>
3,Properties注入
<bean name="" class="">
<property name="">
<props>
<prop key=""></prop>
<prop key=""></prop>
<prop key=""></prop>
</props>
</property>
</bean>
网友评论