作用

作者: bfx1000 | 来源:发表于2018-07-30 09:24 被阅读0次

    优雅 REST 风格的 URL 不希望带 .html 或 .do 等后缀,而如果将 DispatcherServlet 请求映射配置为"/",则Spring MVC将捕获Web容器所有的请求,静态资源的请求找不到对应处理器将导致错误。

    <servlet>
            <servlet-name>springMVC</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>springMVC</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    

    解决办法:
    1、在xml文件中配置<mvc:default-servlet-handler/>

    <mvc:default-servlet-handler/>
    

    在xml文件中配置<mvc:default-servlet-handler/>,Spring MVC上下文中定义一个org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler,对进入 DispatcherServlet 的 URL 进行筛查,静态资源由 Web 服务器默认的Servlet 处理,非静态资源的请求,由 DispatcherServlet 处理

    2、<mvc:resources /> 允许静态资源放在任何地方

    <mvc:resources location="/,classpath:/META-INF/publicResources/" mapping="/resources/**"/>
    

    配置将Web根路径 "/" 及类路径下 /META-INF/publicResources/ 的目录映射为 /resources 路径。假设Web根路径下拥有 images、js 这两个资源目录,在 images下面有 bg.gif 图片,在 js下面有 test.js 文件,则可以通过 /resources/images/bg.gif 和 /resources/js/test.js 访问这二个静态资源。

    相关文章

      网友评论

          本文标题:作用

          本文链接:https://www.haomeiwen.com/subject/xpexvftx.html