spring的IOC和DI

很多的时候,我们讲spring,都会提到spring的核心功能,IOC和DI。即控制反转和依赖注入。
很多的文章,在提到两者的时候,更多的是把他们等同起来看,即普遍认为ioc就是di,di也就是ioc。
其实不然,可以这样子认为:通常情况下,我们的程序都不可能完全的由一个类来完成一整个复杂的业务,所以当我们在一个业务类A要调用另外一个业务类B的时候,我们都是手工的去new 一个对象出来。这个是我们自己来做的。由程序员来控制这个被调用类B的使用情况和生命周期。现在有了spring容器,我们可以把这样的操作权交给spring容器来帮我们完成。即我们把需要调用的业务类B通过xml配置的方式,来帮我们new一个实例对象。这就是控制反转

依赖注入是这样的,上面讲到了A要引用B,需要我们在某个时候时刻手工来setter一下,即

A a =new A();
B b = new B();
a.setB(b);

这样我们就把B的对象实例化到A中了,但是我们可以通过spring容器来帮我们完成这一步,

<bean id="b" class="com.B"></bean>
<bean id="A" class="com.A">
<property name="b" ref="b"></property>
</bean>

这样子我们就把B注入到了A中

谢谢我讲完了
Thx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值