为什么在maven创建的项目中不能使用静态资源???
静态资源的访问:html\css\js\图片资源等 (注意:jsp不是静态资源)
因为访问静态资源要访问全局web.xml中的DefaultServlet,
映射路径为/,和前端控制器冲突了,而且局部优先,前端控制器没问题,但是静态资源就访问不到了
解决方案1:将web.xml中前端控制器的影射路径改成*.action,访问handler时都带上.action(我们不动全局文件)
<url-pattern>/</url-pattern>改成
<url-pattern>*.action</url-pattern>
缺点:每个都要加.action如 @RequestMapping("/show")-->@RequestMapping("/show.action")
解决方案2:
mvc.xml中加一句:
<mvc:default-servlet-handler></mvc:default-servlet-handler>
<!-- 静态资源访问-->
<!-- 在后端controller中生成一个handler,该handler用于解决静态资源访问
访问优先级最低,其他路径都访问不到的时候就访问/**-->
相当于:
UerController.java中加上了:(用于处理静态资源)
@RequestMapping("/**")
public String resouce(){
//处理静态资源
return null;
}
全局web.xml:
<servlet&g
为什么在maven创建的项目中不能使用静态资源???
最新推荐文章于 2023-11-12 14:26:59 发布