继承实现 bean配置信息
故事背景:创建一个person05,写了很多个属性并且为属性赋值。现在 来了个person06,只想修改一个名字,其他属性的值都不变,这时,可以使用parent参数,继承上一个person05,在person06中只填写需要修改的属性,不需要修改的属性,不需要改
<bean id ="person05" class="com.guigu.bean.Person">
<property name="lastname" value="曾梓健"></property>
<property name="car" ref="Car01"></property>
<property name="car.carName" value="奔驰"></property>
<property name="email" value="10953@qq.com"></property>
</bean>
<!-- parent指定当前bean的配置信息继承于哪个 -->
<bean id="person06" class="com.guigu.bean.Person" parent="person05">
<property name="lastname" value="周杰伦"></property>
</bean>
再加一个条件说:我想让person05不能直接使用getbean获取,只能让person06继承,该怎么 写呢?
<bean id ="person05" class="com.guigu.bean.Person" abstract="true">
直接getbean对象person05时,会报错:
bean之间的依赖创建顺序
xml配置文件中:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id ="person" class="com.guigu.bean.Person"></bean>
<bean id = "car" class="com.guigu.bean.Car"></bean>
<bean id ="book" class="com.guigu.bean.Book"></bean>
</beans>
在每个person类等等,都有一个无参构造方法
在test方法中创建该容器,可以看到创建的顺序:
创建顺序和xml的配置顺序是一样的,如何通过不改变代码顺序,达到改变创建次序的效果呢?
这里用到了depends-on ,意思是depends-on后面的对象先创建