【问题标题】:When will we use applicationContext.xml in Spring? [duplicate]我们什么时候在 Spring 中使用 applicationContext.xml? [复制]
【发布时间】:2013-08-08 18:13:02
【问题描述】:

为什么我们在 Spring 中需要 applicationContext.xml

我们会在什么情况下使用它?你有例子吗?

applicationContext.xmlspring-servlet.xml 有什么区别?

我们如何比较 Spring 中的 applicationContext.xml 和 Struts 中的 Struts.xml 以便于理解?

【问题讨论】:

  • 您自己对此做了哪些研究?什么你不明白,做了你的研究,你为什么不明白?
  • viralpatel.net/blogs/… 第一次看起来不错

标签: java spring spring-mvc


【解决方案1】:

为什么我们在 Spring 中需要 applicationContext.xml?

在 Spring 框架的早期,应用程序上下文,即引导、协调和控制所有对象所需的各种编织和设置,使用 XML 文件完成。尽管可以将各种设置和依赖注入分解为多个上下文文件,但在 Spring 2.5 及更高版本中,注释驱动设置使这一过程变得更加容易。

applicationContext.xml和spring-servlet.xml有什么区别?

在基于 MVC 的项目中,同样,如果您的项目没有使用注释驱动的编织机制,则可以在 spring-servlet.xml 中设置所有端点 servlet。请注意,文件名始终是自己选择的。

我们如何比较 Spring 中的 applicationContext.xml 和 Struts 中的 Struts.xml 以便于理解?

就他们想要达到的目标而言,它们都是相似的。即应用程序引导设置的中心位置。同样,所有设置都可以分层到不同的文件中以使其模块化。

【讨论】:

    【解决方案2】:

    applicationContext 来自 Spring Framework:它管理业务/DAO bean。

    spring-servlet 来自 Spring MVC:它管理 Web bean。

    【讨论】:

      【解决方案3】:

      一个 Web 应用程序可以同时运行多个 servlet,因此:

      spring-servlet.xml 将保存仅对特定 servlet 可见的 bean。

      您可以运行许多不同的 servlet

      spring-servlet2.xml
      spring-servlet3.xml
      messaging-servlet.xml 
      

      等等

      applicationContext.xml 将保存应用程序范围的 bean。因此,所有运行的 servlet 都可以访问applicationContext.xml 中定义的 bean。但是,这是一种单向依赖,您的 servlet 可以访问您的 applicationContext.xml bean,但您的 applicationContext 无法访问您的任何 servlet bean。

      【讨论】:

        猜你喜欢
        • 2019-01-08
        • 2015-09-26
        • 2019-01-13
        • 2017-06-28
        • 2011-08-01
        • 2014-08-31
        • 1970-01-01
        • 2012-02-15
        • 1970-01-01
        相关资源
        最近更新 更多