bean之间的关系:继承(配置上的继承)、依赖
继承bean配置:
spring允许继承bean的配置。
子bean从父bean继承配置,包括bean的属性配置
<bean id="address" class="mdd.study.beans.relation.Address"
p:city="Beijing" p:street="HuiLongGuan"></bean>
<bean id="address2" parent="address" p:city="WuHan" p:street="JieDaoKou"></bean>
父bean可以作为配置模板,也可以作为bean实例。若只想把父bean作为模板,可以设置<bean>的abstract属性为true,这样spring将不会实例化这个bean。
<bean id="address" class="mdd.study.beans.relation.Address"
p:city="Beijing" p:street="HuiLongGuan" abstract="true"></bean>
<bean id="address2" parent="address" p:city="WuHan" p:street="JieDaoKou"></bean>
并不是<bean>元素里的所有属性都会被继承,eg:autowire、abstract等。
也可以忽略父bean的class属性,让子bean指定自己的类,而共享相同的属性,但此时abstract必须设为true
<bean id="address"
p:city="Beijing" p:street="HuiLongGuan" abstract="true"></bean>
<bean id="address2" class="mdd.study.beans.relation.Address" parent="address"
p:city="WuHan" p:street="JieDaoKou"></bean>
依赖bean的配置:
spring允许通过depends-on属性设定bean前置依赖的bean,前置依赖的bean会在本bean实例化之前创建好。
如果前置依赖多个bean,这可以通过逗号,空格的方式配置bean的名称