Spring学习笔记4_Bean属性注入
1.构造方法注入 2.Setter方法注入 3.集合属性的注入 3.1、List属性注入 3.2、Set属性注入 3.3、Map属性注入 3.4、properties属性注入 4.名称空间p和c的使用 5.SpEl 提示:点击文章底部的“阅读原文”查看以前所有的笔记
在 spring 中 bean 的属性注入有两种
1.构造器注入
2. Setter方法注入
关于 ref 属性作用
使用 ref 来引入另一个 bean 对象,完成 bean 之间注入
3.集合属性的注入
在 spring 中对于集合属性,可以使用专门的标签来完成注入例如:list set map properties等集合元素来完成集合属性注入.
3.1 List 属性注入
如果属性是数组类型也可以使用 list 完成注入
3.2 Set 属性注入
3.3 Map 属性注入
3.4 Properties 属性注入
Java.util.Properties 是 java.utilsMap 的实现类,它的 key 与 value 都是 String 类型.
4. 名称空间 p 和 c 的使用
Spring2.0 以后提供了 xml 命名空间。
P 名称空间
C 名称空间
首先它们不是真正的名称空间,是虚拟的。它是嵌入到 spring 内核中的。
使用 p 名称空间可以解决我们 setter 注入时<property>简化
使用 c 名称空间可以解决我们构造器注入时<constructor-arg>简化
使用 setter 注入
在 applicationContext.xml 文件中添加 p 名称空间简化 setter 注入
使用 c 名称空间来解决构造器注入
在 applicationContext.xml 文件中添加 c 名称空间
注:如果 c 或 p 名称空间操作的属性后缀是”-ref”代表要引入另一个已经存在的 bean,例如
5. SpEl
spring expression language 是在 spring3.0 以后的版本提供
它类似于 ognl 或 el 表达式,它可以提供在程序运行时构造复杂表达式来完成对象属性存储及方法调用等。
Spel 表达式的格式 #{表达式}
示例 1:完成 bean 之间的注入
示例 2 支持属性调用及方法调用