在spring MVC框架下是不能直接访问静态资源的,因为他默认去找controller层中的方法,但又找不到方法所以会报 404(未找到)错误,不过springmvc提供了解决此问题的方法
在mvc配置类中有一个addResourceHandlers方法,重写该方法即可实现静态资源的映射
addResourceHandler():参数是浏览器地址栏访问的地址
参数中 /img/** 表示/img/前缀下的所有请求都会被映射
addResourceLocations():参数是映射到的实际目录
classpath: 表示从类路径下查找资源。在打包后的 jar 文件或 war 文件中,类路径通常指的是 src/main/resources 目录下的内容
静态资源的常见位置有:
(1)classpath:/static/
(2)classpath:/public/
(3)classpath:/resources/
以访问本地主机为例
若配置了registry.addResourceHandler("/img/**").addResourceLocations("classpath:/static/img/");
浏览器访问http://localhost:8080/img/xiaoming.png时 实际访问的是src/main/resources/static/img/xiaoming.png