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

相关推荐
计算机学姐7 分钟前
基于SpringBoot的校园资源共享系统【个性化推荐算法+数据可视化统计】
java·vue.js·spring boot·后端·mysql·spring·信息可视化
一条咸鱼_SaltyFish11 分钟前
[Day15] 若依框架二次开发改造记录:定制化之旅 contract-security-ruoyi
java·大数据·经验分享·分布式·微服务·架构·ai编程
智航GIS12 分钟前
10.7 pyspider 库入门
开发语言·前端·python
跟着珅聪学java16 分钟前
JavaScript 底层原理
java·开发语言
廋到被风吹走18 分钟前
【Spring】Spring Boot 配置管理深度指南:Profile、类型安全与加密
spring boot·安全·spring
项目題供诗21 分钟前
C语言基础(二)
c语言·开发语言
Mr. Cao code22 分钟前
Docker数据管理:持久化存储最佳实践
java·docker·容器
J_liaty25 分钟前
RabbitMQ面试题终极指南
开发语言·后端·面试·rabbitmq
强子感冒了26 分钟前
Java 学习笔记:File类核心API详解与使用指南
java·笔记·学习