为什么说被多人误解,因为大多人都把配置“/”理解成不能拦截后缀名的,其实这种理解是错误的!
它其实也能拦截“.js”,“.css”,”.png”等静态资源的访问。
为什么?
因为<url-pattern>/</url-pattern>在Tomcat服务器是默认的servlet;通过查看Tomcat web.xml可得知,
它除了能够处理静态资源还能够处理HTTP缓存请求,媒体(音频/视频)数据流和文件下载简历。所以如果我们的项目中配置了”/”,会覆盖掉tomcat中的default servlet。
所以当springMVC的前端控制器配置为“/”时,需要在主配置文件中配置放行静态资源。
第一种:
<!– 放行静态资源 –>
<mvc:resources location=”/js/” mapping=”/js/**”/>
<mvc:resources location=”/css/” mapping=”/js/**”/>
<mvc:resources location=”/images/” mapping=”/js/**”/>
第二种:
<mvc:default-servlet-handler />
版权声明:本文为weixin_39148512原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。