開篇
梳理過程,也就是一個深入的過程,在深入了解一個東西,必須先了解下一些相關(guān)的概念、定義以及一些思想。下面先整理下spring的一些定義和一些接口
IOC
即Inverse of Controller 控制反轉(zhuǎn)。
- 誰控制誰
Ioc控制對象及其他資源
- 什么被反轉(zhuǎn)了
對象或其他資源被反轉(zhuǎn)了
以前對象之間的引用都是通過new來實現(xiàn)的,有了Spring IOC后,我們可以把對象之間的引用交給它來管理,這樣就把控制權(quán)交給了Spring,所以就叫控制反轉(zhuǎn)。
BeanFactory
Spring ioc本質(zhì)就是一個org.springframework.beans.factory.BeanFactory,BeanFactory作為一個頂級接口,定義了ioc的一些功能規(guī)范。該系列的容器只實現(xiàn)了容器的基本功能。
ApplicationContext
org.springframework.context.Application是容器的高級形態(tài),Applicaton在基礎(chǔ)容器之上增加了很多面向框架的特性,同時對應(yīng)用環(huán)境做了很多適配。
BeanDefinition
一個org.springframework.beans.factory.config.BeanDefinition是描述了一個bean的實例、擁有的屬性值、構(gòu)造參數(shù)值和具體實現(xiàn)提供的其他信息
BeanDefinitionRegistry
org.springframework.beans.factory.support.BeanDefinitionRegistry主要作用是向注冊表中注冊BeanDefinition實例、完成BeanDefinition的注冊管理。
BeanDefinitionReader
org.springframework.beans.factory.support.BeanDefinitionReader的作用是讀取Spring配置內(nèi)容,并轉(zhuǎn)換成IoC容器內(nèi)部的BeanDefinition
Resource
org.springframework.core.io.Resource 是對資源的一些描述的接口,代表外部資源
ResourceLoader
org.springframework.core.io.ResourceLoader接口用于返回Resource對象;其實現(xiàn)可以看作是一個生產(chǎn)Resource的工廠類。