Spring 属性注入方式
set方法注入(建议使用)
- 基本数据类型注入
< bean >
< property name=" " value=" ">< /property >
< /bean> - 对象类型注入
1、先将对象以及对象的属性配置到容器中
< bean name=“car1” class=“…”>
< property name=" " value=" “>< /property >
< property name=” " value=" “>< /property>
< /bean>
2、用ref属性完成对象属性注入
< bean >
< property name=” " ref=" car1">< /property >
< /bean>
构造函数 注入
- 基本数据类型与对象注入同set方法注入
< bean>
< constructor-arg name="" value=""> < /constructor-arg>
< constructor-arg name="" ref=""> < /constructor-arg>
< /bean> - 若有多个不同的构造函数,则利用index指定参数的顺序(从零开始);type指定参数的类型
< bean>
< constructor-arg name="" value="" index=“” type=" “> < /constructor-arg>
< constructor-arg name=”" ref="" index=""> < /constructor-arg>
< /bean>
p名称空间注入
1、导入p名称空间xmlns:p=“http://www.springframework.org/schema/p”
2、使用p:属性完成注入
|-值类型:p:属性名=“值”
|-对象属性:p:属性名-ref=“bean名称”
复杂类型注入(数组,list/set、map、properties)
-
数组注入(如果数组只有一个值(对象),也可以直接使用value|ref即可)
< bean >
< property name=" " >
< arry>
< value>tom< /value>
< value>jerry< /value>
< /arry>
< /property>
< /bean> -
list/set注入
< bean >
< property name=" " >
< list>
< value>tom< /value>
< value>jerry< /value>
< ref bean=“car1”/>
< /list>
< /property>
< /bean> -
map注入
< bean >
< property name=" " >
< map>
< entry key="" value="">< /entry>
< entry key="" value-ref=“car1”>jerry< /entry>
< /map>
< /property>
< /bean> -
properties注入
< bean >
< property name=" " >
< props>
< prop key=“username”>root < /prop>
< prop key=“password”>123456 < /prop>
< /props>
< /property>
< /bean>