hualinux spring 3.19:Spring三大组件

目录

一、 Bean组件

1.1 作用

1.2 Bean的创建

1.3 Bean的定义

1.4 Bean的解析

二、 Context组件

2.1 组件作用

2.2 ApplicationContext子类

三、Core组件

3.1 访问资源

3.2 Core资源的加载


这里介绍spring三大组件Bean、Context、Core

一、 Bean组件

1.1 作用

Bean组件在Spring中的Beans包下,为了解决三件事。Bean的创建,Bean的定义,Bean的解析。最关心的就是Bean的创建。

1.2 Bean的创建

1、工厂模式的实现,顶层接口是:BeanFactory

虽然最终实现类是DefaultListableBeanFactory,但是其上层接口都是为了区分在Spring内部对象的传递和转换的过程,对对象的数据访问所做的限制。

ListableBeanFactory:可列表的

HierarchicalBeanFactory:可继承的

AutowriteCapableBeanFactory:可自动装配的

这四个接口,共同定义了Bean的集合,Bean之间的关系,Bean的行为。

1.3 Bean的定义

Bean的定义完整的描述在Spring配置文件中节点中,包括子节点等。

在Spring内部它被转换成BeanDefinition对象,后续操作都是对这个对象操作。

主要是BeanDefinition来描述

1.4 Bean的解析

BeanDefinitionReader

Bean的解析就是对Spring配置文件以及对Tag的解析。

 

二、 Context组件

2.1 组件作用

在Spring中的context包下,为Spring提供运行环境,用以保存各个对象状态。

Context作为Spring的IOC容器,整合了大部分功能或说大部分功能的基础,完成了以下几件事:

  1、标识一个应用环境

  2、利用BeanFactory创建Bean对象

  3、保存对象关系表

  4、能够捕获各种事件

ApplicationContext是context的顶级父类,除了能标识一个应用的基本信息外,还继承了五个接口,扩展了Context的功能。并且继承了BeanFactory,说明Spring容器中运行的主体对象是Bean,另外还继承了ResourceLoader,可以让ApplicationContext可以访问任何外部资源。

2.2 ApplicationContext子类

1、ConfigurableApplicationContext:表示Context是可以修改的,在构建Context,用户可以动态添加或者修改已有的配置。

2、WebApplicationContext:为Web准备的Context,可以访问ServletContext。

 

三、Core组件

3.1 访问资源

1、它包含了很多关键类,一个重要的组成部分就是定义的资源的访问方式,这种把所有资源都抽象成了一个接口的方式很值得学习。

2、Resource接口封装了各种可能的资源类型,继承了InputStreamSource接口。

加载资源的问题,也就是资源加载者的统一,由ResourceLoader接口来完成。

默认实现是:DefaultResourceLoader

 

3.2 Core资源的加载

Core组件将解析等工作委托给了ResourcePatternResolver来完成,作为一个接头人,把资源的加载,解析和定义整合在了一起便于其他组件使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值