mog*_*lol 6 java spring spring-mvc java-ee spring-bean
我有一个spring mvc项目设置如下:
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-contexts/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-contexts/configuration-context.xml</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-contexts/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-contexts/configuration-context.xml</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
如果我在configuration-context.xml中创建一个bean并在servlet-context.xml中引用一个bean,它就无法找到它.这些是作为两个不同的背景创建的吗?为什么这种情况会发生/一般这样?
是的,有两个上下文相互堆叠(父和子上下文).
DispatcherServlet(servlet-context.xml)中的bean可以从ContextLoaderListener(configuration-context.xml)访问bean ,但不能反过来.
所以把基本的东西放在configuration-context.xml和网络相关的内容中servlet-context.xml.
@See也是这个Stack Overflow问题:ContextLoaderListener与否?
| 归档时间: |
|
| 查看次数: |
4284 次 |
| 最近记录: |