IoC与DI
快问快答
- Spring Bean是什么
Bean是定义的一个组件或对象,组件作用实现某个功能。由IoC来实例化、装配与管理
- IoC是什么
IoC(Inversion of Control)控制反转,是Spring中的重要设计思想。将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。
IoC图示
下图是传统主动创建对象,需要我们自己new,然后注入到其需要依赖的另一个对象中
下图是IoC完成的工作,不需要主动创建对象
- 简而言之,Spring框架管理这些Bean的创建工作,即由用户管理Bean转变为框架管理Bean,这个就叫控制反转 - Inversion of Control (IoC)。
- 创建的Bean放在IoC Container中
- 如何配置Bean,xml配置,Java配置,注解配置等
- 管理生命周期,
IoC与DI
DI - dependency injection,依赖注入。组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中
IoC是设计思想,DI是实现方式
IoC配置方式
xml配置
这种方式出现很多早前的SSM项目中,将第三方类库或者一些配置工具类都以这种方式进行配置,主要原因是由于第三方类不支持Spring注解。
JAVA配置
依赖注入
setter注入
IoC与DI
https://dreamerland.cn/2024/03/04/springboot/SpringIoC/