1

我使用带有以下前端控制器配置的 Spring MVC 3.1:

<servlet>
        <servlet-name>paymentSystemServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/servlet-config.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>paymentSystemServlet</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>

因为我有像“* .html”这样的模式,所以我必须做下一件事。我需要在我的所有 url 中添加一个 html 扩展名到控制器(例如,'a href=/admin.html' 使用请求映射 '/admin' 拦截控制器)。我可以配置一些 url-pattern 以避免在我的 url 中添加 html 扩展名吗?谢谢你。

4

1 回答 1

3

通过将 DispatcherServlet 映射到 /,您可以将其用作默认 servlet,它将负责处理所有请求,包括 html、htm 等。

<servlet-mapping>
        <servlet-name>spitter</servlet-name>
        <url-pattern>/</url-pattern>
</servlet-mapping>

或者,您可以使用 Spring MVC 3.x默认 servlet 处理程序来完成这项工作。只需将以下内容添加到 Spring XML 配置中。

<mvc:default-servlet-handler/>
于 2013-02-27T14:25:32.743 回答