zoukankan      html  css  js  c++  java
  • javaweb项目springmvc,和tomcat对静态文件的处理

    1.激活Tomcat的defaultServlet来处理静态文件,web.xml配置

        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>*.js</url-pattern>
        </servlet-mapping>

      a.说到了这里另外说说url-pattern的配置

      

    <!--url-pattern的三种写法-->
    <!--精确匹配:以"/"开头,加上servlet名称。-->
    /abc
    
    <!--路径匹配:以"/"开头,加上通配符"*"-->
    /rsources/*
    
    <!--扩展名匹配:以通配符"*"开头,加上扩展名。-->
    *.action 

    2.springmvc处理,spring-mvc.xml配置

    <mvc:resources location="/resources/" mapping="/resources/**"/>

    3.会把"/**" url,注册到SimpleUrlHandlerMapping的urlMap中,把对静态资源的访问由HandlerMapping转到org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler处理并返回.
    DefaultServletHttpRequestHandler使用就是各个Servlet容器自己的默认Servlet.

    <mvc:default-servlet-handler/>

    多个HandlerMapping的执行顺序问题:

    DefaultAnnotationHandlerMapping的order属性值是:0

    <mvc:resources/ >自动注册的 SimpleUrlHandlerMapping的order属性值是: 2147483646

    <mvc:default-servlet-handler/>自动注册 的SimpleUrlHandlerMapping 的order属性值是: 2147483647

    spring 会先执行order比较小的。

    总结:个人觉得第一种比较好,如果没有做静态文件cdn的话,还是在默认的servlet做处理比较好,这样就不会进入拦截器进行处理。

  • 相关阅读:
    SBIT
    Linux 系统中进程5中常见状态
    centos yum command
    About DNS
    【从零开始学BPM,Day1】工作流管理平台架构学习
    打破陈规抓痛点,H3 BPM10.0挑战不可能
    H3 BPM让天下没有难用的流程之产品概述
    《中国BPM品牌竞争力指数》完整版
    H3 BPM的品牌制胜之道
    《中国BPM品牌竞争力指数》报告出炉,H3 BPM持续领跑
  • 原文地址:https://www.cnblogs.com/ppli/p/5669260.html
Copyright © 2011-2022 走看看