当前位置: 首页 > 编程笔记 >

Spring框架中应用程序上下文和Beanfactory之间的区别

秦博达
2023-03-14
本文向大家介绍Spring框架中应用程序上下文和Beanfactory之间的区别,包括了Spring框架中应用程序上下文和Beanfactory之间的区别的使用技巧和注意事项,需要的朋友参考一下

Spring框架提供了两个IOC容器,用于管理,配置和操作Bean。一个是BeanFactory,另一个是应用程序上下文。 

应用程序上下文接口扩展了BeanFactory,以增强BeanFactory的功能。 

在新的Spring版本中,BeanFactory替换为ApplicationContext。但是,BeanFactory的存在是为了向后兼容。 

Spring 2.0及更高版本使用了BeanPostProcessor扩展点(接口提供了一些回调方法,我们可以实现这些方法来定制实例化逻辑,依赖项解析逻辑等)。因此,如果您使用的是BeanFactory,则某些功能(如AOP和事务处理)必须进行一些额外的配置才能使用。

序号 豆工厂 应用环境
1个
实作 
XMLBeanFactory implements BeanFactory 
FileSystemXmlApplicationContext,ClassPathXmlApplicationContext和AnnotationConfigWebApplicationContex实现ApplicationContext。 

此外,ApplicationContext扩展了Beanfactory 
2
注解 
No

3
实例化
Benafactory instantiate beans when  getBean() method gets called.
容器启动时应用instainte bean。
4
活动发布 
Bean factory does not have the ability to push events to the beans 
应用程序上下文具有将事件推送到bean的能力。
5
加载机制
Lazy loading 
激进的加载 
 类似资料:
  • 我是Spring的初学者。今天,当我在阅读Spring core文档时,我在第1.3章中发现了以下说明。Bean概述 除了包含关于如何创建特定bean的信息的bean定义外,ApplicationContext实现还允许注册(由用户)在容器外部创建的现有对象。这是通过getBeanFactory()方法访问ApplicationContext的BeanFactory来完成的,该方法返回BeanFa

  • Spring中以下媒体类型有什么区别: < li >应用程序流JSON < li >应用程序流JSON值 我在Spring的留档中找到了以下解释: ref:https://docs . spring . io/spring-framework/docs/current/javadoc-API/org/spring framework/http/media type . html # APPLICA

  • 我正在阅读spring framework文档,现在我正在讨论应用程序范围概念。关于这个概念的文档是这样说的: 这有点类似于Spring单例bean,但有两个重要的区别:它是每个ServletContext的单例,而不是每个Spring ApplicationContext的单例 对我来说,不清楚的是我们如何想象Spring应用程序上下文和Servlet上下文之间的关系。 那么,Spring应用程

  • 问题内容: Spring框架中Application context和bean factory的简单词义。 问题答案: BeanFactory厂 该是初始化,配置实际的容器,并管理多个bean。这些bean通常彼此协作,因此彼此之间具有依赖性。这些依赖关系反映在所使用的配置数据中(尽管某些依赖关系可能不会作为配置数据可见,而是在运行时Bean之间的编程交互作用的函数)。 ApplicationCo

  • 我在Eclipse中有一个maven-spring项目,在我的一个spring上下文中有一个恼人的错误消息: 引用的文件包含错误(jar:file:/m2_home/repository/org/springframework/spring-beans/3.1.2.release/spring-beans-3.1.2.release.jar!/org/springframework/beans/f

  • 我使用Spock框架和Groovy脚本来测试我的Java应用程序。对于我创建的所有类,我的项目有100%的测试覆盖率。然而,我注意到覆盖范围显示,名为“app”的主类没有得到充分测试。 这是我对App类的一个测试: 如何用Spock框架充分测试Spring Boot应用程序上下文?