<!-- springmvc的前端控制器 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- contextConfigLocation不是必须的
如果不配置contextConfigLocation
springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" --> <init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
/ 表示拦截所有的请求,包括静态资源 

注意:当前端使用jsp java后端模板引擎时,/  不会匹配到 .jsp ( 即 不会进入到项目中dispathservlet中,不会拦截 。jsp的请求,因为 jsp 在被访问时会解析,生成servlet,然后编译servlet,之后会被编译成为一个.class文件,实际是一个servlet在运行,因此可由web服务器直接访问。)

/* 会匹配到。jsp的路径。即 会匹配项目所有路径。
<url-pattern>/</url-pattern> --表示拦截所有的请求,包括静态资源

2、去静态资源拦截有三种方式

1、在web.xml中配置映射
2、在springMVC.xml中配置映射
3、在springMVC.xml中添加静态资源默认Servlet处理

3、方式一

在web.xml中配置映射

     <!-- 对静态资源的配置 -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
<url-pattern>*.css</url-pattern>
<url-pattern>*.ico</url-pattern>
<url-pattern>/img/*</url-pattern>
<url-pattern>/fonts/*</url-pattern>
<url-pattern>/font/*</url-pattern>
</servlet-mapping>
Tomcat, Jetty, JBoss 自带的默认Servlet的名字 -- "default"
WebLogic 自带的 默认Servlet的名字 -- "FileServlet"
WebSphere 自带的 默认Servlet的名字 -- "SimpleFileServlet"

可以根据自身情况,来配置映射

注意: 请将它放在所有Servlet的最前面(为了让它最先匹配),这样的话性能上应该比较好


4、方式二

在springMVC.xml中添加静态资源的映射

     <!-- 资源映射 -->
<mvc:resources location="/WEB-INF/css/" mapping="/css/**"/>
<mvc:resources location="/WEB-INF/js/" mapping="/js/**"/>

根据实际情况自行配置


5、方式三

在springMVC.xml中添加静态资源默认Servlet处理

 <mvc:default-servlet-handler/>

 <!-- 也可以自行手动配置,自定义servlet -->
<mvc:default-servlet-handler default-servlet-name="myDefaultServlet"/>

注意: 这种方式对spring版本必须要求3.0.5及以上

Spring MVC -- 去掉静态资源的拦截的更多相关文章

  1. Spring MVC 处理静态资源文件

    摘要: 三个方案: 1.方案一:激活Tomcat的defaultServlet来处理静态文件 2.方案二: 在spring3.0.4以后版本提供了mvc:resources (需要配置annotati ...

  2. 【Spring学习笔记-MVC-14】Spring MVC对静态资源的访问

    作者:ssslinppp       参考链接: http://www.cnblogs.com/luxh/archive/2013/03/14/2959207.html  http://www.cnb ...

  3. Spring MVC配置静态资源和资源包

    Spring MVC配置静态资源和资源包 本例映射:css目录: pom.xml <properties> <spring.version>4.3.5.RELEASE</ ...

  4. Spring MVC 读取静态资源时404错误

    背景:web.xml配置时拦截策略是拦截所有请求: <servlet> <servlet-name>springmvc</servlet-name> <ser ...

  5. spring mvc对静态资源的访问

    如果我们的项目使用的是springmvc,在web.xml中会有一段这的配置. <servlet> <servlet-name>springMvc</servlet-na ...

  6. Spring Boot干货:静态资源和拦截器处理

    前言 本章我们来介绍下SpringBoot对静态资源的支持以及很重要的一个类WebMvcConfigurerAdapter. 正文 前面章节我们也有简单介绍过SpringBoot中对静态资源的默认支持 ...

  7. spring mvc处理静态资源

    servlet的url映射定义为'/'表示映射全部路径 struts的过滤器是*.action,在spring mvc中设置成*.action或者*.do......也是可以的,但是spring mv ...

  8. Spring Boot2.0 静态资源被拦截问题

    在Spring Boot2.0+的版本中,只要用户自定义了拦截器,则静态资源会被拦截.但是在spring1.0+的版本中,是不会拦截静态资源的. 因此,在使用Spring Boot2.0+时,配置拦截 ...

  9. springMVC去掉静态资源的拦截

    前端控制器的配置 <!-- springmvc的前端控制器 --> <servlet> <servlet-name>springMVC</servlet-na ...

随机推荐

  1. Java异常try里面有return,finally代码会执行吗

    try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后? 肯定会执行.finally{}块的代码只有在try{} ...

  2. JS转为number的四种方法

    // 1.Number() var num1 = Number(true); console.log(num1); var num2 = Number(" ") console.l ...

  3. ios json数据null的处理

    此处我把json数据中的null转换成了@"",防止出现null程序崩掉,可以把下边宏代码复制到pch中,就可以在整个程序中引用了 #define DSStringValue(va ...

  4. Kattis - heapsoffun Heaps of Fun (概率密度函数+dp)

    题意:有一棵含有n个结点(n<=300)的根树,树上每个结点上的权值是从[0,ai](ai<=1e9)区间内随机的一个实数,问这棵树能形成一个最小堆的概率. 由于结点取值范围是1e9而且是 ...

  5. 初识linux(简单命令)

    之前一直搞不懂,为什么全是命令行的linux系统这么多公司都在用,当你看不懂那一行行命令时你一定会和我一样觉得头大.但当你学习了命令再结合桌面版觉得linux还是挺不错的

  6. mysql 8.0.18 手工安装记录

    mysql 8.0.18 手工安装记录 为了日常方便,特记录如下. 一.安装系统依赖包 #.系统依赖包安装 yum -y install make gcc-c++ cmake bison-devel ...

  7. 30 最小n个数

    public class test30{ public static void main(String args[]){ int array[]={3,2,5,1,4}; int temp[] = f ...

  8. maven项目创建4

    运行maven项目,首先要不最根项目添加到maven本地仓库,执行  项目-->右键-->Run as-->Maven install 注:创建war包项目,本地测试,创建index ...

  9. 窗体操作:CBrush类

    CBrush画刷定义了一种位图形式的像素,利用它可对区域内部填充颜色. 该类封装了Windows的图形设备接口(GDI)刷子.通过该类构造的CBrush对象可以传递给任何一个需要画刷的CDC成员函数. ...

  10. RedHat6.2系统安装ipvsadm+keepalived

    一.安装IPVS 软件包下载: 链接:https://pan.baidu.com/s/1zNgPtALbdBTC1H6e0IaZPw 提取码:xm7t 1.检查内核模块,看一下ip_vs 是否被加载 ...