Spring-总体架构(三)

Spring的骨骼架构是,Bean组件,Content组件,Core组件。

最核心是Bean组件,意义类似于java面向对象的 '对象' 这个概念。

spring的作用核心是,把对象之间的依赖关系通过配置文件来管理,即依赖注入机制。

Bean组件包装了Object,而Object一定带有数据,所以需要通过Content组件来给这些数据提供生存环境,同时Content去找寻Bean之间的关系,并维护这些关系,可以把Content组件理解为Bean之间的关系的集合,这个关系集合也叫Ioc容器。一旦建立了Ioc容器,spring的核心功能就有了。

Core组件是发现,建立,维护Bean之间的关系的工具,可以理解为Util。

Bean组件

Bean组件在org.springframework.beans包下,这个包的类主要完成bean的定义,创建,解析。使用者只要关心'创建'即可,定义和解析是透明的。

Bean创建的父接口是BeanFactory,最终默认实现类是DefaultListableBeanFactory

Core组件

Core组件定义了资源的访问方式,Resource接口封装了各种可能的资源类型。所有资源通过InputStream类来获取。所有资源通过ResourceLoader接口来加载,默认实现是DefaultResourceLoader类。

Context组件

Context组件在org.springframework.context包下,作用是给spring提供一个运行时环境,保存各个对象状态。ApplicationContext类是Context的顶级父类,它继承了5个接口,其中包括BeanFactory接口和ResourceLoader接口,以实现对bean和资源的管理。

ApplicationContext完成了,标识一个应用环境,利用BeanFactory创建对象,保存对象关系表,捕获各种事件这几件事。

bean实例创建流程图:



猜你喜欢

转载自blog.csdn.net/gcc_java/article/details/81002349