Spring bean的三种注入方式

Spring的一个重要原理就是IOC(Inverse Of Control),即控制反转。IOC就是一种将组件依赖关系的创建和管理置于程序外部的技术,在Spring中Bean组件的实例化和依赖关系的管理控制都由Spring容器负责,对象与对象之间的关系可以简单的理解为对象之间的依赖关系:在 类 A 需要类 B 的一个实例来进行某些操作时,比如在类 A 的方法中需要调用类 B 的方法来完成功能,叫做类 A 依赖于类 B。依赖注入(DI:Dependency Injection) :两个对象之间的依赖关系在程序运行时由外部容器动态的注入依赖行为方式称为依赖注入 (DI) ,DI 是 IOC 的一种形式。IOC能够实现:你的类不会去查找或是实例化它们所依赖的类。控制恰好是反过来的,容器会设置这种依赖关系。使用 IoC 常常使代码更加简洁,并且为相互依赖的类提供一种很好的方法。

依赖注入的三种实现类型:构造器注入、Setter注入和接口注入。

1、构造器注入

依赖关系是通过类构造函数建立的,容器通过调用类的构造方法将其所需的依赖关系注入其中,例如在Spring的XML配置文件中,在构造Bean的时候使用<constructor-arg>元素来设置其依赖的对象。构造期间完成一个完整的、合法的对象。所有依赖关系在构造函数中集中呈现。依赖关系在构造时由容器一次性设定,组件被创建之后一直处于相对“不变”的稳定状态。只有组件的创建者关心其内部依赖关系,对调用者而言,该依赖关系处于“黑盒”之中。

<bean id="sonnet29" class="lucien.Sonnet29" />

<!-- 构造器注入 -->
<bean id="poeticDuke" class="lucien.PoeticJuggler">
	<constructor-arg value="15" />
	<constructor-arg ref="sonnet29" />
</bean>

2、Setter方法注入

JavaBean的属性通常都是私有的,拥有一组存取器即:setXXX()和getXXX(),Spring就是通过使用属性的set方法来实现setter注入的。对于习惯了传统 javabea

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值