Mun*_*del 3 web-deployment spring-boot
当我使用以下映射在应用程序中添加新控制器(非休息)后,我的静态资源就停止工作
@RequestMapping(value = "/{postId}/{postUri:.+}", method = RequestMethod.GET)
public String viewPost(@ModelAttribute("model") ModelMap model, PathVariable("postId") String postId, PathVariable("postUri") String postUri) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
调试之后,我发现我新添加的控制器方法开始拾取静态资源,基本上,它优先于静态资源的默认映射。
例如,对以下静态资源的请求到达了我的控制器,而不是静态资源处理程序。
http://localhost:7999/css/bootstrap-2a31dca112f26923b51676cb764c58d5.css
Run Code Online (Sandbox Code Playgroud)
我正在使用Spring Boot 1.4
因为我不想修改Controller方法的URL,是否可以修改用于提供默认静态内容的映射URL?
当然可以 还有一个spring.mvc.static-path-pattern,你可以用它来重写:
spring.mvc.static-path-pattern=/resources/**
Run Code Online (Sandbox Code Playgroud)
将映射classpath:/static/css/foo.css到/resources/css/foo.css。
话虽如此,我只能强烈建议您更改那里的路径。具有捕获根上下文的path变量确实是一个坏主意。
| 归档时间: |
|
| 查看次数: |
15598 次 |
| 最近记录: |