zoukankan      html  css  js  c++  java
  • SpringMVC初写(六)静态资源设置

    众所周知,SpringMVC的DispatchServlet是不可以以/*规则拦截请求的,否则会将JSP都拦截了,但有时候我们的请求路径是不能有后缀(Resful风格的接口需要),基于上述情况,我们可以将web.xml中的路径配置文件改为<url-pattern>/</url-pattern>

    /*和/的区别:

    /*表示拦截所有的东西,包含动态页面和静态资源,/表示拦截所有的静态资源(html,css,js...)以及请求,除了动态页面(jsp)的其他东西

    SpringMVC框架对于实现无后缀请求的解决方案是修改<url-pattern>/</url-pattern>的定义,使<url-pattern>/</url-pattern>也可以让拦截的请求访问静态资源

    流程:

      1.在web.xml中对<url-pattern>/</url-pattern>进行配置

      

    <servlet>
        <servlet-name>dispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>classPath:spring-mvc.xml</param-value>
        </init-param>
      </servlet>
      <servlet-mapping>
        <servlet-name>dispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>

      2.对SpringMVC进行配置,指定开放的静态资源映射

    <mvc:annotation-driven></mvc:annotation-driven>
        <!-- 方案1:一个个目录放开
        <mvc:resources>标签可以放开单个静态资源目录的访问
        mapping:指定访问的映射路径
        location:指定放开的静态资源文件目录
         -->
        <mvc:resources location="/img/" mapping="/img/**"></mvc:resources>
        <!-- 方案2:一次性放开所有的静态资源文件目录 -->
        <mvc:default-servlet-handler/>

    注:使用<mvc:**>类的标签必须要先配置<mvc:annotation-driven/>标签

  • 相关阅读:
    zabbix监控nginx的性能
    常用iptables命令
    shell脚本小示例
    打印菜单脚本
    ping主机脚本
    Linux网络配置脚本
    多磁盘自动分区自动挂载脚本
    深入js系列-类型(null)
    深入js系列-类型(开篇)
    first-child、last-child误解
  • 原文地址:https://www.cnblogs.com/lch-Hao/p/10770650.html
Copyright © 2011-2022 走看看