怎么拦截html加载的静态资源,Spring MVC设置不拦截静态资源

71c34adb11b1b053ea87ba3ebf6d5de1.png

一、前言

Spring MVC 下的 WEB 项目,会配置 Servlet 为DispatcherServlet,设置拦截 url 一般为/,如下 web.xml 配置:

SpringMVC

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:applicationContext.xml

1

SpringMVC

/

这样,静态资源也会被 DispatcherServlet 拦截导致不能访问(404),可以通过以下四种对静态资源放行。

二、静态资源放行四种方式

1、web.xml 中设置 default Servlet

default

*.html

default

*.css

default

*.js

其实就是将设置的静态资源重新交由 default Servlet(如果 WEB 容器是 Tomcat,其实就是 tomcat 的默认 Servlet)去处理。

可以看到每一种后缀的静态资源都需要配置一次,所以这种方式是比较臃肿的。

2、Spring MVC 配置文件中配置 mvc:resources

这种方式也需要根据放行的资源目录,配置多条。

3、 Spring MVC 配置文件中配置 mvc:default-servlet-handler

这一条就够了,这样所有的静态资源全部走默认 Servlet。

4、web.xml 配置 url 拦截加后缀

*.do

这其实是 Hibernate 对应的 url 配置习惯,这样浏览器访问路径就成了:http://localhost:8080/xxx/xxx.do

这就需要在编写 RequestMapping 时都加上.do后缀,浏览器访问也要加上,这不符合 Spring MVC 的编程习惯。

以上就是 Spring MVC 不拦截静态资源的四种方式。over!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值