开发环境
基于:IntelliJ IDEA
、Maven构建工具
、JDK1.8
、SpringBoot 2.3.4
、Spring4.3.28
编写。
官人如需使用 IDEA 请阅读教程:IntelliJ IDEA
官人如需使用 Maven 请阅读教程:Maven 构建工具的下载与安装
更多干货
请参考:《穿越 Java 之 语法基础篇》 系列文章
请参考:《穿越 Java 之 Web基础篇 》系列文章
请参考:《穿越 Java 之 开发必备框架篇 》 系列文章
请阅读:《穿越 Java 之 SpringBoot框架篇》系列文章
请阅读:《穿越 Java 之 SpringCloud微服务架构篇》 系列文章
定义
-
IOC : inverse of control 控制反转。 将对象的创建权交由Spring容器来管理,它是一种目的。
-
由于对象之间总是存在依赖关系的。
-
有时候会将Spring容器称为 IOC 容器。 IOC也是Spring的两大核心功能之一。
-
Spring IOC的实现用到了设计模式:简单工厂,他也是从简单工厂进化而来的。
-
DI: Dependecy Inject 依赖注入。是将一个对象所依赖的其他对象的实例传进来,它是一种手段。
-
它们本质上是对同一件事物的不同角度的描述。
原理
- Spring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化Bean 并建立 Bean 之间的依赖关系。
- Spring 的 IoC 容器在完成这些底层工作的基础上,还提供了 Bean 实例缓存、生命周期管理、 Bean 实例代理、事件发布、资源装载等高级服务。