开篇
梳理过程,也就是一个深入的过程,在深入了解一个东西,必须先了解下一些相关的概念、定义以及一些思想。下面先整理下spring的一些定义和一些接口
IOC
即Inverse of Controller 控制反转。
- 谁控制谁
Ioc控制对象及其他资源
- 什么被反转了
对象或其他资源被反转了
以前对象之间的引用都是通过new来实现的,有了Spring IOC后,我们可以把对象之间的引用交给它来管理,这样就把控制权交给了Spring,所以就叫控制反转。
BeanFactory
Spring ioc本质就是一个org.springframework.beans.factory.BeanFactory
,BeanFactory
作为一个顶级接口,定义了ioc的一些功能规范。该系列的容器只实现了容器的基本功能。
ApplicationContext
org.springframework.context.Application
是容器的高级形态,Applicaton
在基础容器之上增加了很多面向框架的特性,同时对应用环境做了很多适配。
BeanDefinition
一个org.springframework.beans.factory.config.BeanDefinition
是描述了一个bean的实例、拥有的属性值、构造参数值和具体实现提供的其他信息
BeanDefinitionRegistry
org.springframework.beans.factory.support.BeanDefinitionRegistry
主要作用是向注册表中注册BeanDefinition
实例、完成BeanDefinition
的注册管理。
BeanDefinitionReader
org.springframework.beans.factory.support.BeanDefinitionReader
的作用是读取Spring配置内容,并转换成IoC容器内部的BeanDefinition
Resource
org.springframework.core.io.Resource
是对资源的一些描述的接口,代表外部资源
ResourceLoader
org.springframework.core.io.ResourceLoader
接口用于返回Resource对象;其实现可以看作是一个生产Resource的工厂类。