Spring配置文件中的Bean之间的关系

本文介绍了Spring框架中Bean节点之间的三种关系:直接引用、继承和依赖。详细解释了这些关系如何帮助开发者更好地组织和管理Bean配置。

  前边我们讲过了Spring的自动装配的特性,即可以根据指定Bean的属性autowire为byName名称和byType类型装配,根据属性装配要求类的setXxx()中的xxx必须和bean中的id一致;根据类型装配要求类属性的类型必须和bean的class一致(根据类型装配要求当前IOC容器中之能有一个满足类型匹配的bean,否则无法确认哪一个合适,就无法匹配)。今天我们来说一说在IOC容器中配置的bean节点之间可以存在的关系。

  1. 直接引用

  若把一个bean的ref指向另一个bean的id,那么后者就是被前者引用为自己的实例属性了。

  2. 继承

  ① 当bean之间的属性大致相同时,我们为了简化代码就可以让子Bean继承父bean。子bean就可以拥有父bean的部分属性,同时子bean也可以覆盖父bean的属性内容。需要注意的是,子bean并非继承了父bean的所有属性,如:abstract和autowire属性就不会被子bean继承。

  ② bean除了可以配置在IOC容器中用于创建实例之外,也可以用于当做父bean模板。如果只希望某个bean当做父bean模板,那么可以将这个bean的属性abstract设置为true。一旦这个bean被设置成模板bean,那么这个bean就无法再IOC初始化的时候创建实例了(不可被实例化,也不可被指向)。

  3.依赖

  Spring中允许通过depends-on属性指定当前bean需要依赖的bean。依赖的作用呢是为了确保在当前bean之前要求被依赖的bean节点存在且可以被实例化。

  如果某个bean依赖于多个bean,那么可以通过逗号、空格的方式配置bean的名称。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值