当前位置: 首页 > 面试题库 >

使用web.xml在Spring中加载上下文

解沈义
2023-03-14
问题内容

在SpringMVC应用程序中,有没有一种方法可以使用web.xml加载上下文?


问题答案:

Spring可以轻松集成到任何基于Java的Web框架中。你需要做的就是在web.xml中声明ContextLoaderListener并使用contextConfigLocation 设置要加载的上下文文件。

<context-param>:

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext*.xml</param-value>
</context-param>

<listener>
   <listener-class>
        org.springframework.web.context.ContextLoaderListener
   </listener-class>
</listener> 

然后,你可以使用WebApplicationContext来获取bean的句柄。

WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(servlet.getServletContext());
SomeBean someBean = (SomeBean) ctx.getBean("someBean");


 类似资料:
  • 我们最近切换到了 Glassfish 3.1.2.2,并有几个 Web 应用程序打包为 war 文件。有时,这些应用程序所需的上下文根目录与文件名不同。 当我们使用Weblogic时,我们通过在Weblogic中声明上下文根来实现这一点。像这样的xml 我们注意到glassfish-web.xml中存在相同的标记,但是不管我们在那里定义什么,服务器总是将文件名确定为上下文根。 现在我们在 asad

  • 问题内容: 问候 , 有什么方法可以将值从web.xml context-param转换为Spring上下文吗? 例如,我将web.xml中的值定义为: 我想将该值分配给bean属性为: 提前致谢? 问题答案: 是的- 本文介绍了详细信息。简而言之,您需要: 然后使用以下属性: 或搭配

  • 在上下文参数中加载上下文和在调度程序 Servlet 的初始化参数中加载上下文之间有什么区别? 相对 我的理解是context-参数由上下文侦听器加载,应该只包含中间层bean。Dispatcher Servlet在其init方法中应该加载web层bean。这种理解正确吗?为什么我们分别加载两个东西?

  • 我得到的错误是: 我试图更改上下文配置的位置,如下所示:

  • 所以我有一个项目,在其中我使用Spring boot,并希望利用一个模块系统。我希望模块系统能够动态地重新加载。我让它几乎可以工作,但是@ComponentScan在模块中完全不工作。 有一个模块文件夹,包含启动时加载的jar文件,需要动态卸载、加载和重新加载。 模块通过AnnotationConfigApplicationContext创建,上下文的类加载器设置为核心的类加载器,模块接口中的方法

  • 我使用Maven和surefire插件通过扩展AbstractTestNGSpringContextTests来运行TestNG测试,结果显示,即使上下文在类路径中也没有加载,并且测试在我的ide中正常工作,但在Maven中不行。 @contextConfiguration(locations=Array(“classpath*:/com/gottex/gottware/server/offlin