我们知道spring在web.xml中可以有三种方式来配置其xml路径:
org.springframework.web.servlet.DispatcherServlet
org.springframework.web.context.ContextLoaderListener
org.springframework.web.context.ContextLoaderServlet
当使用第一种方式配置时,spring载入的WebApplicationContext是隶属于此Servlet的(所以spring可以配置多个分别拥有各自环境的DispatcherServlet),因此其他servlet无法获取到该Context。这一现象在buffalo配置时曾经出现(无法找到服务bean)。分析了buffalo和spring的源码后,将xml在ContextLoaderListener配置才得以解决。
spring的ContextLoaderListener与DispatcherServlet在WebApplicationContext上的细微区别
最新推荐文章于 2022-04-08 08:41:28 发布
本文介绍了Spring框架中通过web.xml配置XML文件的三种方法:使用DispatcherServlet、ContextLoaderListener及ContextLoaderServlet。重点分析了不同配置方式下WebApplicationContext的作用域及相互间的影响,并举例说明如何解决配置不当导致的服务bean无法被发现的问题。
917

被折叠的 条评论
为什么被折叠?



