一、浅谈IOC

IOC(Inversion of Control)是spring的核心,贯穿始终。所谓IOC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系:

传统开发模式:对象之间相互依赖

IOC开发模式:IOC容器安排对象之间的依赖

二、IOC理论的背景

借助于第三方来实现对具有依赖关系的对象之间的解耦

三、依赖注入(DI)

IOC的另外的名字叫做依赖注入(Dependency Injection),所谓的依赖注入,就是由IOC容器在运行期间,动态地将某种依赖关系注入到对象中。所以,依赖注入(DI)和控制反转(IOC)是从不同的角度的描述的同一件事情,就是指通过引入IOC容器,利用依赖关系注入的方式,实现对象之间的解耦

四、IOC的好处

IOC在编程过程中不会对业务逻辑构成很强的侵入性,使用IOC之后,对象具有更好的可实行性,可重用性和可扩展性:

降低组件之间的耦合度

提高开发效率和产品质量

统一标准,提高模块的复用性

模块具有热插拔特性

五、IOC的通俗理解

IOC控制反转:说的是创建对象实例的控制权从代码控制剥离到IOC容器控制,实际就是在xml文件控制,侧重于原理

DI依赖注入:说的是创建对象实例时,为这个对象注入属性值或其他对象实例,侧重于实现