注入参数详解
1. 直接注入值
<bean id=”car” class=”com.smart.attr.Car”>
<property name=”speed”>
<value>2000</value>
</property>
</bean>
也可以将value作为property属性使用,当value值包涵xml标签或其他可能引起xml异常的符号时,应该使用<![CDATE[String]]>,把其中内容当字符串解析
2. 应用其他Bean
<bean id=”person” class=”com.smart.person”>
<property name=”car”>
<ref bean=”car”/>
</property>
</bean>
<bean id=”car” class=”com.smart.attr.Car”/>
<ref >属性有bean/local/parent
3. 集合类型属性
重要包括List、Set、Map、Properties
(1) List
<bean id=”person” class=”com.smart.person”>
<list>
<value>读书</value>
<value>看报</value>
<value>游泳</value>
</list>
</bean>
可以直接注入字符串,也可以通过<ref>注入其他Bean;Set类似
(2) Map
<bean id=”person” class=”com.smart.person”>
<property name=”name”>
<map>
<entry>
<key><value>key</value></key>
<value>value</value>
</entry>
</map>
</property>
</bean>
(3) Properties
Properties可以看作Map的特例,Map的键值可以使任何类型的对象,而Properties键值只能是字符串
<bean id=”person” class=”com.smart.person”>
<property name=”name”>
<props>
<prop key=”key”>value</prop>
</props>
</property>
</bean>
4. 通过util命名空间配置集合类型的Bean以及p简化配置
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-3.1.xsd>
…..
<util:list id=”favorite” list-class=”java.util.ArrayList”>
<value>value</value>
</util:list>
<util:set id=”” set-class=””>
<value></value>
</util:list>
<util:map id=”” map-class=””>
<entry key=”” value=”” />
</util:map>
<! --list 和set支持 value-type map支持key-type和value-type 限定值类型 -- >
……
<! –p命名空间简化配置 -- >
<bean id=”car” class=””
p:brand=””
p:maxSpeed=””
p:price=”” />
<bean id=”person” class=””
p:car-ref=”car”/>
</bean>