springboot访问本地资源
SpringBoot映射本地图片,外界可通过网络路径发送 HTTP 请求访问该图片。
在工作中,我们会把图片保存到服务器本地的某个目录下,然后前端 image 标签的 src 属性,填写网络路径即可访问到该图片,这该如何配置呢?有两种方法:
- 第一种方法,我们可以修改 application.yml 文件 这个方法有个弊端,在某些场景下,可能会无效,比如你的项目中写了某些过滤器等原因。另外,使用yml配置,也会使你静态访问路径失效
1
2
3
4
5
6
7
8spring:
web:
resources:
# 支持本地图片上传之后的链接,其中 file:///d的用于win系统,后面的file: 适用于mac/linux系统
static-locations:
- classpath:/static/
- file:///d:/tmp/storage/
- file:/tmp/storage/ - 第二种方法,添加 webConfig 配置类
1
2
3
4
5
6
7
8
9
10
public class WebConf extends WebMvcConfigurationSupport {
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/", "classpath:/META-INF/resources/webjars/");
//通过image访问本地的图片
registry.addResourceHandler("/image/**").addResourceLocations("file:/tmp/storage");
}
}
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 KiCheng's Blog!