注意: 图片等资源保存路径建议放在项目同级目录下面,避免图片因放入静态文件路径下,需要刷新服务器才能加载到资源,造成上传的图片无法显示的问题
在yml配置文件中配置
#下面的名称根据需要都可以自己命名
web:
mapping-Path: /img/** #可以直接访问的地址
bemapped-path: /root/java/img/ #映射地址
Springboot 2使用是在配置类中实现WebMvcConfigurer接口
@Configuration
public class AppConfig implements WebMvcConfigurer {
//application.yml中配置的,相当于mappingPath=“/img/**”
@Value("${web.mapping-Path:}")
private String mappingPath;
@Value("${web.bemapped-path}")
private String beMappedPath;
//将所有/images/** 访问都映射到file:/root/java/img/(即主机本地的选定目录中);
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("mappingPath").addResourceLocations("file:" + beMappedPath);
WebMvcConfigurer.super.addResourceHandlers(registry);
}
}
/*也可以直接写文件路径,不过打包后就不能修改了,只能在源码中修改
将所有/images/** 访问都映射到file:/root/java/img/(即主机本地的选定目录中);
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/img/**").addResourceLocations("file:/root/java/img/");
WebMvcConfigurer.super.addResourceHandlers(registry);
}*/
下面是linux中图片资源位置