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较多时,会降低程序启动的效率,也会占用一定的内存空间。

相关推荐
不染尘.4 分钟前
二叉树相关题目
开发语言·数据结构·c++·算法
女王大人万岁10 分钟前
Go标准库 sync 详解
服务器·开发语言·后端·golang
qq_4112624212 分钟前
短时间串口发送网络端怎么接收不到
开发语言·php
静谧空间14 分钟前
java登录验证码CaptchaConfig
java·开发语言
Imxyk18 分钟前
力扣:632. 最小区间(贪心)
java·数据结构·算法
小高Baby@18 分钟前
session、cookie、Jwt-token
开发语言·后端·golang
驱动探索者19 分钟前
linux genpool 学习
java·linux·学习
露天赏雪21 分钟前
JDK8 的入门避坑指南
java·服务器·windows·spring boot·后端·spring·性能优化
maplewen.21 分钟前
C++11 std::mutex
开发语言·c++
jiaguangqingpanda22 分钟前
Day37-20260205
java·开发语言