SpringMVC静态资源被拦截后,解决的三种方式

如何你的DispatcherServlet拦截 .do这样的URL,就不存在访问不到静态资源的问题。如果你的DispatcherServlet拦截“/”,拦截了所有的请求,同时对.js,*.jpg的访问也就被拦截了。
方案一:
把以下代码写在web.xml文件里,一定要写在DispatcherServlet的前面, 让defaultServlet先拦截,这个就不会进入Spring了。要配置多个,每种文件配置一个。

1 <servlet-mapping>
 2     <servlet-name>default</servlet-name>
 3     <url-pattern>*.jpg</url-pattern>
 4 </servlet-mapping>
 5 <servlet-mapping>
 6     <servlet-name>default</servlet-name>
 7     <url-pattern>*.js</url-pattern>
 8 </servlet-mapping>
 9 <servlet-mapping>
10     <servlet-name>default</servlet-name>
11     <url-pattern>*.css</url-pattern>
12 </servlet-mapping> 

第二种:
在bean文件里写上下面的代码

<mvc:annotation-driven/>
<mvc:default-servlet-handler/> 

第三种:
在bean文件里写上下面的代码

<mvc:annotation-driven/>
<mvc:resources mapping="/images/**" location="/images/" />

任选一种就好
在插一句:/*表示spring会拦截所有.jsp的资源。

参考自:https://www.cnblogs.com/caoyc/p/5639078.html

发布了14 篇原创文章 · 获赞 0 · 访问量 327

猜你喜欢

转载自blog.csdn.net/qq_38205881/article/details/103639492
今日推荐