在Spring配置文件中,可以将int,String等字面值注入Bean中,还可以将List,Map等类型注入,以及其他定义的Bean。
- 字面值
字面值指的是可用字符串表示的值,默认情况下基本数据类型,String等类型都可以采用字面值注入的方式。
Spring容器在内部为字面值提供了编辑器,可以将字符串表示的字面值转换成相应的数据类型。(可以自定义编辑器)
- 引用其他Bean
<ref/>标签有三个属性可以引用其他Bean:
Bean属性:通过该属性可以引用同一个容器及父容器中的Bean(最常用,默认属性)
Local属性:只能引用同一个容器中的Bean
Parent属性:引用父容器中的属性
- NULL值
如果需要为一个属性注入null值,则使用<null/>标签
- 集合类属性(List,Map,Set)
使用<list/>,<map/>,<set/>标签
<propety name="">
<map>
<entry key=""value=""/>//注入字面值
<entry key-ref=""value-ref=""/>//注入其他Bean
</map>
</propety>
<propety name="">
<list>
<value></value>//注入字面值
<refbean=" " />//注入其他Bean
</list>
</propety>
<propety name="">
<set>
<value></value>//注入字面值
<refbean=" " />//注入其他Bean
</set>
</propety>
- 使用 P 命名空间
<bean id="" class="">
<p:属性名=“”/>
<p:属性名-ref=“”/>
</bean>
- 使用util命名空间配置集合类型的Bean
也可以用来代替上面的方式为集合类型的属性注入值
如果一个Bean是List类型
<util:list id="" list-class="">
<value></value>//注入字面值
<refbean=" " />//注入其他Bean
</util:list>
如果一个Bean是Map类型
<util:lmap id="" map-class="">
<entry key=""value=""/>//注入字面值
<entry key-ref=""value-ref=""/>//注入其他Bean
</util:map>
如果一个Bean是Set类型
<util:set id="" set-class="">
<value></value>//注入字面值
<refbean=" " />//注入其他Bean
</util:set>