(三)配置bean之间的关系:继承、依赖
来源:互联网 发布:做数据库有前途吗 编辑:程序博客网 时间:2024/05/17 20:24
第一步:建三个类Address.java、Car.java 、Person
第二步配置文件:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 抽象bean:bean的abstract属性为true,这样的bean不能被IOC容器实例化,只用来被继承配置 若某一个bean的class属性没有指定,该bean必须是一个抽象bean --> <bean id="address" class="com.atguigu.spring.beans.autowire.Address" p:city="Beijing" p:street="WuDaoKou" abstract="true"></bean> <!-- <bean id="address2" class="com.atguigu.spring.beans.autowire.Address" p:city="Beijing" p:street="DaZhongSi"></bean> --> <!--bean配置的继承:使用bean的parent属性指定继承哪个bean的配置 --> <bean id="address2" parent="address"></bean> <bean id="address3" p:street="DaZhongSi" parent="address2"></bean> <!-- 要求配置Person時,必須有一个关联的car,换句话说这个bean依赖于car这个bean Spring允许用户通过depends-on属性设定Bean前置依赖bean,前置依赖bean会在本bean实例化前创建好 --> <bean id="car" class="com.atguigu.spring.beans.autowire.Car" p:brand="Audi" p:price="300"></bean> <bean id="person" class="com.atguigu.spring.beans.autowire.Person" p:name="Tom" p:address-ref="address3" depends-on="car"> </bean></beans>
第三步:运行main方法
package com.atguigu.spring.beans.relation;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.atguigu.spring.beans.autowire.Address;import com.atguigu.spring.beans.autowire.Person;/** * * 配置bean的继承和依赖 * */public class Main { public static void main(String[] args) { ApplicationContext ctx=new ClassPathXmlApplicationContext("beans-relation.xml"); Address address=(Address) ctx.getBean("address2"); System.out.println(address); address=(Address) ctx.getBean("address3"); System.out.println(address); Person person=(Person) ctx.getBean("person"); System.out.println(person);//Person [name=Tom, address=Address [city=Beijing, street=DaZhongSifangxinde], car=null] }}
第四步:运行结果
Car's Constructor.....Address [city=Beijing, street=WuDaoKou]Address [city=Beijing, street=DaZhongSi]Person [name=Tom, address=Address [city=Beijing, street=DaZhongSi], car=null]
阅读全文
0 0
- (三)配置bean之间的关系:继承、依赖
- Spring配置--Bean之间的关系(继承和依赖)
- spring bean之间的关系:继承;依赖
- 10009---bean 之间的关系:继承;依赖
- bean 之间的关系:继承;依赖
- spring- bean之间的关系 继承 依赖
- 【跟我学spring 4.0 】之第五节-配置bean之间的关系:继承、依赖
- Spring 框架Bean之间的关系(继承、依赖)
- Spring-4 bean之间的关系----继承和依赖
- Spring4之Bean之间的关系(继承、依赖、引用)Bean的作用范围
- Bean之间的依赖配置
- 五bean之间的继承与依赖
- spring学习小结——bean之间的关系 继承 依赖
- spring学习小结3——bean之间的继承,依赖关系
- Spring 中 bean 之间的关系:parent(继承) 和 depends-on (依赖)作用是什么?
- Spring4深入理解IOC&DI02----Bean配置--自动装配、bean之间的继承与依赖、使用外部属性文件
- 继承bean配置,依赖bean配置
- Spring-5:Bean之间的继承与依赖
- 返回物体的自身坐标
- 菜鸟、京东几十亿打造的智能物流,双十一还会出现收货难么?
- ORB-SLAM2:QObject::~QObject: Timers cannot be stopped from another thread
- 数字签名算法DSA
- Python与机器学习之优化算法
- (三)配置bean之间的关系:继承、依赖
- .NET Remoting 最简单示例
- (M)Backtracking:78. Subsets
- mybatis mysql 插入对象返回数据主键id
- 设计模式_18:桥接模式
- 文章标题
- 深度学习在计算机视觉领域的前沿进展
- 我的Linux学习之路(二、配置网络)
- 复杂链表的复制