【问题标题】:Learning Spring-mvc and need knowledge on Odds and Ends of The Spring Framework that require prerequisite knowledge学习 Spring-mvc 并需要有关 Spring 框架的零碎知识,需要先决知识
【发布时间】:2013-11-12 21:10:16
【问题描述】:

所以我在 JSP 和 Servlet 方面的经验有限。我正在学习 Spring 框架,特别是 Spring MVC,但我看到正确使用 Spring 框架需要一些先决知识。 我理解使用spring的依赖注入。带有 bean 声明的 spring 配置文件对我来说很有意义。该文件是 mvc-dispatcher.xml 文件。但是除了 DispatcherServlet 声明之外,web.xml 中通常还需要什么?在我正在研究的一个项目的 web.xml 中,我看到有一个不熟悉的项目,称为 <listener><context-param>。 web.xml 中的这些条目是做什么用的? contextConfigLocation需要什么?

<servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/spring.xml  /WEB-INF/plugins.xml /WEB-INF/spring-ext.xml</param-value>
</context-param>

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

【问题讨论】:

    标签: java spring servlets spring-mvc


    【解决方案1】:

    servlet 就是注册一个servlet 实例。在这种情况下,您将创建 Spring 的调度程序 servlet,稍后您将对其进行配置。

    servlet-mapping 将 url 模式映射到特定的 servlet。在您的情况下,您正在注册 / 到您的 spring servlet,这意味着 spring 将处理进入您的应用程序的所有请求。

    listener 向响应 servlet 上下文事件的 servlet 容器注册一个侦听器。 ContextLoaderListener 通过实例化一个 spring 上下文来响应正在加载的 servlet。此侦听器使用“contextConfigLocation”的参数名称来查找将用于构造上下文的 spring .xml 文件。

    帮自己一个忙,去 spring 文档获取入门教程,因为这些 xml 文件的内容和正确的配置都有很好的记录。

    另外,这个配置无论如何也不会完全起作用,因为 servlet 本身会寻找一个 servlet-mvc-dispatcher.xml 文件来配置 spring 的 mvc 部分(你可以覆盖它,但这是它的默认行为) . “contextConfigLocation”中的内容是主应用程序上下文,servlet-mvc-dispatcher.xml 成为它的子上下文。

    【讨论】:

    • 我在行动书中经历了春天。你认为我可以从访问春季文档中获得更多好处吗?为什么?
    • Spring in Action 应该会涵盖它。如果我知道你正在阅读它,我会建议在尝试实现某些东西之前阅读更多内容:) mvc 框架中有很多内容,但你需要担心的三个基本文件是 web.xml、servlet- .xml 和您的 applicationContext.xml 文件。
    猜你喜欢
    • 2019-10-18
    • 2011-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-23
    • 2022-12-22
    • 1970-01-01
    相关资源
    最近更新 更多