BeanFactory和ApplicationContext容器

1.BeanFactory容器

在Spring容器中,BeanFactory是IOC容器中的最顶级的接口,是最基础的版本,里面定义了管理bean的基本方法,如:获取bean、判断是否存在等等方法。

BeanFactory下面有很多的实现类,各有职责,其中DefaultListableBeanFactory 就是在Spring中起到生产Bean的作用。如下图:

2.ApplicationContext容器

ApplicationContext间接继承了BeanFactory接口,其里面相较于BeanFactory扩展了更多的功能和服务,也是用来管理Bean的。

3.区别

  • BeanFactory是Spring框架的基础设施,不支持AOP,web等插件,而ApplicationContext不仅包含了BeanFactory的所用功能,还支持Spring的各种插件,功能更全面。

  • BeanFactory采用的是延迟加载,只有在使用Bean时,才会进行加载实例化,这样就不能及时发现项目中的一些配置问题,而ApplicationContext是在启动时,一次性创建好了所有的Bean,但是缺点就是如果Bean较多时,会降低程序启动的效率,也会占用一定的内存空间。

相关推荐
Seven97几秒前
剑指offer-49、把字符串转换成整数
java
编程修仙1 分钟前
第六篇 HttpServletRequest对象
java·spring boot·后端
Lio n J2 分钟前
基于SpringBoot常用脱敏方案
spring boot·spring·mvc·状态模式
杀死那个蝈坦3 分钟前
微服务网关(Spring Cloud Gateway)实战攻略
java·微服务·架构
sugar椰子皮12 分钟前
【爬虫框架-5】实现一下之前的思路
开发语言·爬虫·python
沈询-阿里12 分钟前
AI Agent系列 - 1 什么是 ReAct Agent?
开发语言·javascript·ecmascript
沐知全栈开发17 分钟前
jEasyUI 创建异步树形菜单
开发语言
凌云若寒19 分钟前
半导体标签打印的核心痛点分析
java
灰乌鸦乌卡19 分钟前
泛微OA集成档案信息包生成
java
2301_8035545220 分钟前
利用信号完成这个联动需求
java·开发语言