spring-context

1, ApplicationContext

ApplicationContext-1.png
ApplicationContext-2.png

分析一下基于xml的ClassPathXmlApplicationContext和GenericXmlApplicationContext,以及基于注解的AnnotationConfigApplicationContext的实现机制

2, ClassPathXmlApplicationContext

类层次.png

2.1 DefaultResourceLoader

getResource.png

根据指定的location的协议(file:/classpath:)加载指定资源。

2.2 AbstractApplicationContext

状态.png
refresh.png

实现ApplicationContext,委托细节给子类实现。

2.3 AbstractRefreshableApplicationContext

状态.png

配置内部的beanFactory

2.4 AbstractRefreshableConfigApplicationContext

状态.png

设置配置文件地址

2.5 AbstractXmlApplicationContext

loadBeanDefinitions.png
loadBeanDefinitions.png

从xml中加载BeanDefinition

2.6 ClassPathXmlApplicationContext

配置configResources

3 AnnotationConfigApplicationContext

registerAnnotationConfigProcessors.png

注册各种处理注解的BeanPostProcessor

ApplicationContext最核心的就是依赖内部的DefaultListableBeanFactory实现bean管理功能,依赖内部的ConfigurableEnvironment实现管理profile以及提供基于各种PropertySource的key查找功能

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,273评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,554评论 19 139
  • 转载请注明来源 赖赖的博客 导语 实践是检验真理的唯一标准。 想了很久不知道怎么开头,但是为了写博客这个动机可以一...
    赖赖oO阅读 1,496评论 4 11
  • 在xml配置了这个标签后,spring可以自动去扫描base-pack下面或者子包下面的java文件,如果扫描到有...
    三招六式一把铁斧阅读 389评论 0 0
  • 在我的老家,把姨妈称作姨娘。母亲姊妹五人,她排行老二,我喊姨娘的就有四人。大姨娘一家在外地,多少年才能见一...
    五百文阅读 902评论 0 2

友情链接更多精彩内容