此页内容

009、什么是 Spring IOC

329字约1分钟

2025-02-16

​ IOC(Inversion of control)即控制反转,即让对象的创建与管理由 Spring 容器负责,而不是由对象自身控制。这种机制可以使程序更加灵活和解耦,提升代码的可维护下性和扩展性。

​ 另外,控制反转通过依赖注入(DI)实现,依赖注入即通过构造器、setter 或接口注入,将对象所需的依赖传递给他,而不是让对象自行创建依赖。

控制和反转

控制其实就是控制对象的产生,IOC 容器根据配置文件来创建对象,在对象的生命周期内,在不同时期根据不同配置进行对象的创建和改造。

反转就是关于创建对象且注入依赖对象这个动作,本来这个动作是程序员在代码中指定的,如对象A 依赖对象B ,在创建对象A 的代码里,我们需要写好创建对象B 的代码,才可以构造出一个完整的 A;反转后由 IOC 容器触发,IOC 容器在创建对象A 的时候,发现依赖对象B ,根据配置文件,它会创建对象B 并注入到对象A 中。