BeanFactory 和 ApplicationContext 有什么区别

78次阅读
没有评论

这两个接口都属于 Spring IoC 容器体系,但定位不在一个层级。`BeanFactory` 更像最基础的容器能力,`ApplicationContext` 则是在它之上做的企业级扩展。

BeanFactory 提供了什么

它负责最核心的 Bean 获取和依赖管理,是 Spring 容器体系的基础接口。理解 Spring IoC 时,很多底层概念都能追溯到这里。

ApplicationContext 多做了哪些事

它除了具备容器能力,还集成了事件发布、国际化、资源加载、自动注册后处理器等常用能力,日常项目里更常直接使用它。

默认行为有什么差异

很多场景下,`ApplicationContext` 会更积极地初始化单例 Bean,而 `BeanFactory` 更偏按需获取。也正因为如此,两者的使用体验明显不同。

结论

如果把 `BeanFactory` 看成 Spring 容器的底座,`ApplicationContext` 就是更完整、更适合业务项目直接使用的上层实现。

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-04-24发表,共计413字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)