我必须在名为myproj-controllers.xml,myproj-services.xml和myproj-dao.xml的myproj spring mvc应用程序中加载3个spring config xml文件。我有两个选项来加载它们。加载spring config xmls的最佳方式是什么?
首先使用上下文PARAM这样
<context-param>
<param-name>contextConfigLocation</param-name>
<param-values>/WEB-INF/myproj-controllers.xml</param-values>
<param-values>/WEB-INF/myproj-services.xml</param-values>
<param-values>/WEB-INF/myproj-dao.xml</param-values>
</context-param>
和添加的ContextLoader听众
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
中的Myproj-servlet.xml中使用进口资源
<import resource="myproj-controllers.xml"/>
<import resource="myproj-services.xml"/>
<import resource="myproj-dao.xml"/>
或其次在web.xml
推荐哪种方法?为什么?在我看来,我发现导入方法更简单,因为我们只需要更改myproj-servlet.xml而不是web.xml。
嗨,我没有意识到父上下文+子上下文,如果它在春天的文档中提到我可能完全忽略它。你可以给我一个链接进一步阅读?谢谢。 – tintin
@ user354161:这是在Spring参考中提到的,但不幸的是它是分散的信息,而不是在一个地方强调。不过,javadoc的[ApplicationContext](http://static.springsource.org/spring/docs/2.5.5/api/org/springframework/context/ApplicationContext.html)提到了:_父类上下文的继承。后代中的定义总是优先考虑。例如,这意味着整个Web应用程序可以使用单个父上下文,而每个Servlet都有自己的子上下文,而该子上下文独立于任何其他Servlet。 – 2011-09-10 19:31:54