关于<mvc:default-servlet-handler/>

关于<mvc:default-servlet-handler/>

老师好,想请问这一条声明课程中是写将静态资源排除,但我发现我如果不写这条,我的index.html访问会出现404,只要加回去就能正常访问,这是为何呢?


<!-- 将图片/JS/CSS等静态资源排除在外,可提高执行效率 -->
<mvc:default-servlet-handler/>

https://img1.sycdn.imooc.com//climg/63228caf0907ec4004710089.jpg

https://img1.sycdn.imooc.com//climg/63228cb409184ab003430167.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小蓝 2022-09-15 11:54:13

同学你好,这是因为在web.xml中配置DispatcherServlet时使用的是“/”,此时SpringMVC会将所有请求都当做一般请求进行处理。一般请求在处理时,会默认认为是在访问控制层的控制器,但是静态资源显然不是控制器,就无法进行映射,导致出现404错误。

当加入<mvc:default-servlet-handler/>标签后,如果没有成功映射的请求,会再去尝试匹配静态资源,如果静态资源依然匹配不到,才会报错。

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师