Spring5 IOC原理

Spring框架有两个核心的组成部分 IOC 和 AOP

IOC : 控制反转,把创建对象的过程交给Spring进行管理

Aop : 面向切面, 不修改源代码进行功能增强

今天主要针对IOC进行介绍

IOC是Inversion of Control的缩写,即控制反转,就是把对象创建和对象之间调用的过程交给Spring进行管理,使用 IOC 的目的是为了降低耦合。

通过浏览了一些文章之后,我对 IOC 的理解就是,比如说对象 A 要调用对象 B ,正常写代码的情况下,通常就是当对象 A 需要用到对象 B 的时候,然后就需要自己主动的 new 一个对象 B,主动权在对象 A 自己手中,但是引入了IOC 之后,,如果对象A在需要调用对象B,此时 IOC 会主动的创建一个B对象,然后注入到对象 A 需要的地方。这样就断绝了对象 A 和 对象 B 直接的直接联系。这点与电脑读取USB上文件的场景非常相似。

在电脑读取USB上的文件时,电脑不会关心这个是那个USB设备,只要这个USB是可用的,他就可以从上面读取文件,而电脑读取什么文件的决定权就在我的手上,我想要电脑读取什么文件,我就插入什么USB,这个时候 我 就扮演 IOC 的角色

 

IOC 内部的底层原理主要包括xml解析 、 工厂模式 、 反射

Spring5 IOC原理

 

 

Spring提供 IOC 容器的实现方式有两种:

BeanFactory : IOC 容器的基本实现,是Spring内部的使用接口,不提供给开发人员使用,(加载配置文件时不会创建对象,只有使用对象时才会创建对象,不利于程序的时效性)

ApplicationContext : BeanFactory的子接口,提供给开发人员使用,(加载配置文件的时候就会把在配置文件中的对象创建,有利于程序的时效性)

 

IOC 操作bean管理

Bean管理是指两个操作 创建对象注入属性

Bean管理有两种方式  基于xml配置文件方式实现 注解方式实现

 

上一篇:0经验普本,原来靠提升效率也能进大厂


下一篇:实验4 8086标志寄存器及其中断