一起学SF框架系列4.1-spring-context-核心ApplicationContext

  实际应用中使用SF第一个类就是ApplicationContext(见下图),肯定是非常重要的,我们的学习也从这里开始。
在这里插入图片描述

类作用

在这里插入图片描述
  阅读类文件说明是非常重要的,有助于我们理解类的作用。由于框架中类的说明均比较详细,因此我们学习一个类的第一件事就是阅读类说明。另外:框架类使用标准的JavaDoc规范,需学习JavaDoc是如何使用的

  org.springframework.context.ApplicationContext就spring应用运行的容器,主要作用是构建应用运行的上下文环境,并通过读取配置元数据,负责实例化、配置和组装 bean。其具体职能如下:
1、提供访问应用程序Bean的Bean工厂方法(org.springframework.beans.factory.ListableBeanFactory)。
2、以通用方式加载文件资源(org.springframework.core.io.ResourceLoader)。
3、发布事件到已注册侦听器(ApplicationEventPublisher)。
4、解析消息,并支持国际化(MessageSource)。
5、提供容器继承能力:子容器继承父容器。例如整个web应用程序可以是单实例,每个servlet有它自己的子容器,继承于整个应用单实例,且独立于任何其他servlet的子容器。
6、除了标准的Bean生命周期功能,ApplicationContext实现了检测和调用bean,包括:ApplicationContextAware、ResourceLoaderAware,ApplicationEventPublisherWare、MessageSourceAware。

类关系

类关系图如下:
在这里插入图片描述

父类说明:
EnvironmentCapable:从环境中加载元数据或属性参数,并负责进行解析。
ListableBeanFactory:继承于BeanFactory,不用通过bean查找方式访问bean列表
HierarchicalBeanFactory:继承于BeanFactory,可按继承关系访问父Bean
MessageSource:消息解析,并支持消息的参数化和国际化
ApplicationEventPublisher:发布消息
ResourcePatternResolver:继承于ResourceLoader,负责资源加载和解析。

  ApplicationContext作为应用容器,是业务类运行的基本环境,因此比较复杂。从关系图来看,该类继承了六个接口类(基本都是顶层类),本身也是接口类,从设计来说,具备非常灵活的架构,具体实现由实现类完成,理论上可以有多种实现方案。

类方法

  ApplicationContext是纯接口类,只定义几个get-ApplicationContext本身信息的方法,容器能力来自继承的各个接口类。由此可体会到ApplicationContext就是个舞台,内容多少或能力大小是由各个被继承类来决定;并且根据发展需要,可随时追加更多的能力(继承新的接口类)。

ApplicationContext的实现见:https://blog.csdn.net/davidwkx/article/details/130666124

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乐享技术

每一个打赏,都是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值