Spring框架
2.4.3 集合类型的bean
如果只能将集合对象配置在某个bean内部,则这个集合的配置将不能重用。我们需要 将集合bean的配置拿到外面,供其他bean引用。
配置集合类型的bean需要引入util名称空间
<util:list id="bookList"> <ref bean="book01"/> <ref bean="book02"/> <ref bean="book03"/> <ref bean="book04"/> <ref bean="book05"/> </util:list>
<util:list id="categoryList"> <value>编程</value> <value>极客</value> <value>相声</value> <value>评书</value> </util:list> |
2.5 FactoryBean
2.5.1 FactoryBean
Spring中有两种类型的bean,一种是普通bean,另一种是工厂bean,即FactoryBean。
工厂bean跟普通bean不同,其返回的对象不是指定类的一个实例,其返回的是该工 厂bean的getObject方法所返回的对象。
工厂bean必须实现org.springframework.beans.factory.FactoryBean接口。
<bean id="product" class="com.atguigu.spring.bean.ProductFactory"> <property name="productName" value="Mp3" /> </bean> |
2.6 bean的高级配置
2.6.1 配置信息的继承
1. 背景
查看下面两个Employee的配置,其中dept属性是重复的。
<bean id="dept" class="com.atguigu.parent.bean.Department"> <property name="deptId" value="100"/> <property name="deptName" value="IT"/> </bean>
<bean id="emp01" class="com.atguigu.parent.bean.Employee"> <property name="empId" value="1001"/> <property name="empName" value="Tom"/> <property name="age" value="20"/>
<!-- 重复的属性值 --> <property name="dept" ref="dept"/> </bean>
<bean id="emp02" class="com.atguigu.parent.bean.Employee"> <property name="empId" value="1002"/> <property name="empName" value="Jerry"/> <property name="age" value="25"/>
<!-- 重复的属性值 --> <property name="dept" ref="dept"/> </bean> |