Spring IOC(依赖注入、控制反转)概念理解

假设A组件依赖B组件
    1. 自己new一个。          主动
    2. 找工厂去要一个。       主动。
    3. 等,等容器为我们提供一个被依赖组件。 被动。
传统模式下,无论是A去new一个B组件,还是通过工厂去获取B组件,都要需要A组件主动去获取被依赖的B组件。
用了Spring之后, Spring容器会负责把被依赖的B组件注入到A组件中,A只要被动地等待即可。
——此时A对B的控制关系,由原来的主动变成了被动,Johnson将之成为IoC(从A组件角度起名字)。
Martine Fowler —— IoC难理解,又给这个技术一个名字:依赖注入(DI,从Spring容器角度起名字)。
IoC和DI是同一个事情的两个不同说法。

依赖注入分为三种:

接口注入:很少使用。

设值注入:就是通过property元素控制调用setter方法,就是所谓的设值注入。

构造注入:就是constructor-arg控制调用有参数的构造器,由构造器来注入被依赖组件。就是所谓的构造器注入。



月上西楼推荐阅读:

猜你喜欢

转载自blog.csdn.net/harrytsz/article/details/63692088