基础篇——Spring之XML配置Bean的属性注入
Spring中XML文件配置Bean的简单示例,如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="color">
<value>红色</value>
</property>
</bean>
注:在上述例子中,<property>标签对应的属性类型是基础数据类型,Spring容器会将它的字面值“红色”自动转化成Bean对象中属性所对应到的字符串类型,但是除了字符串、整型等这些基础数据类型外,还有Bean、List、Set、Map、Properties等类型。
注:如果所赋值内容可以被XML文件解析,如:<、&、>、“、‘等,则需要进行特殊处理方可被正确赋值,如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="type">
<value><![CDATA[XX&55]]></value>
</property>
<property name="xml">
<value><:开尖括号</value>
</property>
</bean>
注:上述中Bean对象两个属性赋值分别为XX&55和<开尖括号,使用<![CDATA[文本内容]]>使得文本内容当作普通文本进行处理,<是<的转义格式,另外还有>是>的转义、&是&的转义、"是“的转义、'是‘的转义
注:<value></value>中带有空格则赋予的值将包括空格,如果想要将null赋给属性,如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="color">
<null/>
</property>
</bean>
1、Bean对象中Bean属性在XML文件中的配置如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="boss">
<ref bean="boss"></ref>
</property>
</bean>
<bean id="boss" class="com.smart.ditype.Boss"/>
注:如果①Bean只被②Bean引用而不被其他任何Bean引用,那么可以将①Bean以内部Bean的方式注入到②Bean,如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="boss">
<bean class="com.smart.ditype.Boss">
<property name="color">
<value>红色</value>
</property>
</bean>
</property>
</bean>
2、Bean对象中集合属性在XML文件中的配置如下:
<bean id="car" class="com.smart.ditype.Car">
<property name="list">
<list>
<value>看报</value>
<value>赛车</value>
</list>
</property>
<property name="set">
<set>
<value>踢球</value>
<value>打牌</value>
</set>
</property>
<property name="map">
<map>
<entry>
<key><value>am</value></key>
<value>见客户</value>
</entry>
</map>
</property>
<property name="properties">
<props>
<prop key="mail">17896532@123.com</prop>
</props>
</property>
</bean>