【问题标题】:What is Application context and bean factory in spring framework [duplicate]Spring框架中的Applicationcontext和beanfactory是什么[重复]
【发布时间】:2012-03-23 00:10:22
【问题描述】:

可能重复:
BeanFactory vs ApplicationContext

Spring框架中Application context和bean factory的简单字义。

【问题讨论】:

    标签: java spring


    【解决方案1】:

    BeanFactory

    BeanFactory 是实例化、配置和管理大量 bean 的实际容器。这些 bean 通常相互协作,因此它们之间存在依赖关系。这些依赖关系反映在 BeanFactory 使用的配置数据中(尽管某些依赖关系可能不作为配置数据可见,而是运行时 bean 之间的编程交互的函数)。

    ApplicationContext

    虽然 beans 包提供了管理和操作 bean 的基本功能,通常以编程方式,但 context 包添加了 ApplicationContext,它以更加面向框架的风格增强了 BeanFactory 功能。许多用户会以完全声明的方式使用ApplicationContext,甚至不必手动创建它,而是依赖诸如ContextLoader之类的支持类来自动启动ApplicationContext,作为Java EE web正常启动过程的一部分-应用程序。当然,仍然可以通过编程方式创建 ApplicationContext。

    上下文包的基础是ApplicationContext 接口,位于org.springframework.context 包中。派生自BeanFactory 接口,它提供BeanFactory 的所有功能。为了允许以更加面向框架的方式工作,使用分层和分层上下文,上下文包还提供以下内容:

    • MessageSource,提供对 i18n 样式的消息的访问

    • 访问资源,例如 URL 和文件

    • 事件传播到实现 ApplicationListener 接口的 bean

    • 加载多个(分层)上下文,允许每个上下文集中在一个特定层上,例如应用程序的 Web 层

    由于ApplicationContext 包含BeanFactory 的所有功能,因此通常建议在BeanFactory 上使用它,除了一些有限的情况,例如在小程序中,内存消耗可能很关键,而额外的几千字节可能会有所作为。以下部分描述了ApplicationContext 添加到基本BeanFactory 功能的功能。

    http://static.springsource.org/spring/docs/1.2.x/reference/beans.html

    【讨论】:

    • 嗨,我正在阅读 Spring 4 的书。它提到了ApplicationContext。我知道它是一个接口。但是,这个 ApplicationContext 到底是什么,它的用途是什么(请用简单的英语)?为什么要使用应用这个词?为什么不使用 SpringContext 或 UserContext ?
    • @Borat Sagdiyev informit.com/articles/article.aspx?p=1245203&seqNum=3 我希望这会对你有所帮助。
    • 这是迄今为止我找到的最简单和最好的解释 - dzone.com/articles/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-26
    • 2010-09-19
    • 1970-01-01
    • 2010-12-31
    • 2020-05-30
    • 2012-02-01
    相关资源
    最近更新 更多