一、字面值
--字面值:可用字符串表示的值,可以通过<value>元素标签或value属性进行注入。
--基本数据类型及其封装类,String等类型都可以采取字面值注入方式。
--若字面值包含特殊字符,可以使用<![CDATA[]]>把字面值包裹起来
二、引用其他Bean
1.组成应用程序的Bean经常需要相互协作以完成应用程序的功能,要使Bean能够相互访问,就必须在Bean配置文件中指定对Bean的引用。
2.在Bean的配置文件中,可以通过<ref>元素或ref属性为Bean的属性或构造器参数指定对Bean的引用。
3.也可以在属性或构造器里包含Bean的声明,这样的Bean称为内部Bean,内部bean只能再内部使用,而不能再外部引用。
三、注入参数详解:null值和级联属性
--可以使用专用的<null/>元素标签为Bean的字符串或其他对象类型的属性注入null值(实际使用中意义不大)
--和Struts、Hibernate等框架一样,Spring支持级联属性的配置。
注意:
1.当使用property标签为级联属性进行赋值的时候,必须为相应的属性提供setter方法
2.属性需要先初始化后才可以为级联属性进行赋值,否则会有异常
四、集合属性
--在Spring中可以通过一组内置的xml标签(例如:<list>,<set>,<map>)
--配置java.util.List类型的属性,需要指定<list>标签,在标签里包含一些元素,这些标签可以通过<value>指定简单的常量值,通过<ref>指定对其他Bean的引用,通过<bean>指定内部bean定义,通过<null/>指定空元素,甚至可以内嵌其他集合。
--数组的定义和List一样,都使用<list>
--配置java.util.Set需要使用<set>标签,定义元素的方法和定义list一样
--java.util.Map通过<map>标签定义,<map>标签里可以使用多个<entry>作为子标签,每个条目包含一个键和一个值。
--必须在<key>标签里定义键
--因为键和值的类型没有限制,所以可以自由地位他们指定<value>,<ref>,<bean>,或<null/>
五、配置properties(properties是Map的子类)属性值
六、配置独立的集合Bean进行引用
1.需要导入util命名空间
七、使用p命名空间
--为了简化xml文件的配置,越来越多的xml文件采用属性而非子元素配置信息
--Spring 从2.5版本开始,引入了一个新的p命名空间(使用时需要先导入p命名空间),可通过<bean>元素属性的方式配置Bean属性
--使用p命名空间后,基于xml的配置方式将进一步简化,向对于传统的配置方式将会更加的简洁、