优雅 REST 风格的 URL 不希望带 .html 或 .do 等后缀,而如果将 DispatcherServlet 请求映射配置为"/",则Spring MVC将捕获Web容器所有的请求,静态资源的请求找不到对应处理器将导致错误。
springMVC
org.springframework.web.servlet.DispatcherServlet
1
springMVC
/
解决办法:
1、在xml文件中配置
在xml文件中配置,Spring MVC上下文中定义一个org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler,对进入 DispatcherServlet 的 URL 进行筛查,静态资源由 Web 服务器默认的Servlet 处理,非静态资源的请求,由 DispatcherServlet 处理
2、 允许静态资源放在任何地方
配置将Web根路径 "/" 及类路径下 /META-INF/publicResources/ 的目录映射为 /resources 路径。假设Web根路径下拥有 images、js 这两个资源目录,在 images下面有 bg.gif 图片,在 js下面有 test.js 文件,则可以通过 /resources/images/bg.gif 和 /resources/js/test.js 访问这二个静态资源。