1.静态资源访问路径
- 只要静态资源放在类路径下:/static (or /public or /resources or /META-INF/resources就可以直接访问。
- 访问路径 : 当前项目根路径/ + 静态资源名
示例:访问:http://localhost:8080/girl.jpg
2.原理:
静态映射/**。
请求进来,先去找Controller看能不能处理。不能处理的所有请求又都交给静态资源处理器。静态资源也找不到则响应404页面。
如:当Controller层也有访问地址girl.jpg时
@RestController
public class TestController {
@RequestMapping("/girl.jpg")
public String handle(){
return "this is controller!";
}
}
访问http://localhost:8080/girl.jpg的结果:
3.改变默认静态资源访问前缀
访问路径改为当前项目根路径/ + res/+静态资源名
spring:
mvc:
static-path-pattern: res/**
如:http://localhost:8080/res/girl.jpg
4.改变默认的静态资源路径
访问资源的位置改为在song文件夹下
web:
resources:
static-locations: [classpath:/song/]
访问其他文件夹访问song文件夹下的静态资源:
除了指定文件夹和META-INF/resources文件夹下的静态资源可以访问其他文件夹下的静态资源将不能访问。