大家好,在上一篇的概念中简单的向大家介绍了spring5的特点,以及两个核心点,今天呢主要给大家讲述第一个核心点----IOC
一、什么是IOC
什么是IOC呢,上章节只是简单的提出这个概念是控制反转,其实简单的讲呢,有两个点。
- 控制反转,把对象创建和对象之间的调用过程,交给Spirng进行管理。
- 使用IOC的目的,为了降低耦合度。
二、IOC底层原理
IOC底层原理
- xml解析
- 工厂模式
- 反射
ioc的底层就是由这三部分构成
IOC过程
- 通过XML配置文件,配置创建的对象
- 创建工厂类
虽然通过工厂模式降低了耦合度,注意只是降低耦合度,不可能就没有耦合度的。
三、IOC中BeanFactory接口
1.IOC思想基于IOC容器完成的,IOC容器底层就是对象工厂
2.Spring提供IOC容器实现两种方式(两个接口):
- BeanFactory:IOC容器基本实现,是Spring内部的使用接口,不提供开发人员进行使用
- 加载配置文件时候不会创建对象,在获取对象(使用)才去创建对象
- ApplicationContext:BeanFactory接口的子接口,提供更多更强大的功能,一般由开发人员进行使用
- 加载配置文件时候就会把在配置文件对象进行创建
3.ApplicationContext接口有两个实现类:
FileSystemXmlApplicationContext;
ClassPathXmlApplicationContext;