应该在applicationContext和dispatcherServlet中声明哪些bean

3 java spring spring-mvc

最初我宣布了所有的bean dispatcher-servlet,我的应用程序工作了.我真的需要一个applicationContext.xml档案吗?

Boz*_*zho 8

您不一定需要它,但它是分离应用程序层的首选方法:

  • dispatcher-servlet.xml地方只有网络相关的东西-控制器,视图解析器,转换器等.
  • applicationContext.xml所有服务和daos,以及其他一般配置

请注意,您必须声明一个侦听器,以便spring可以加载applicationContext.xml:

<listener>
    <listener-class>
       org.springframework.web.context.ContextLoaderListener
    </listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)

然后,上下文applicationContext.xml将是父上下文,而其中dispatcher-servlet.xml的上下文将是子上下文.孩子看到父母的豆子,但父母看不到孩子的那些.

另请注意,这applicationContext.xml是默认名称.您可以通过更改名称或搜索路径contextConfigLocation <context-param>