04.BeanFactory和ApplicationContext的继承体系
简介
BeanFactory是核心接口,项目运行过程中肯定有具体实现参与,这个具体实现就是DefaultListableBeanFactory,而ApplicationContext内部维护的Beanfactory的实现类也是它
1.1 查看继承体系
idea专业版选中要查看的类 Ctrl H 即可查看其继承体系层次结构,社区版要安装Hierarchy插件
BeanFactory的继承体系:

ApplicationContext的继承体系:

1.2 ApplicationContext的作用
在Spring基础环境下,常用的三个ApplicationContext作用如下:
| 实现类 | 功能描述 |
|---|---|
| ClassPathXmlApplicationContext | 加载类路径下的xml配置的ApplicationContext |
| FileSystemXmlApplicationContext | 加载磁盘路径下的xml配置的ApplicationContext |
| AnnotationConfigApplicationContext | 加载注解配置类的ApplicationContext |
1.3 补充
如果Spring基础环境中加入了其他组件解决方案,如web层解决方案,即导入spring-web坐标,此时ApplicationContext的继承体系
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.3.7</version>
</dependency>

在Spring的web环境下,常用的两个ApplicationContext作用如下:
| 实现类 | 功能描述 |
|---|---|
| XmlWebApplicationContext | web环境下,加载类路径下的xml配置的ApplicationContext |
| AnnotationConfigWebApplicationContext | web环境下,加载注解配置类的ApplicationContext |
本文介绍了Spring框架中的BeanFactory和ApplicationContext的继承关系,以及它们在不同应用场景下的作用,包括基础环境下的XML配置加载和web环境下的特定ApplicationContext类型。
820





