springboot~静态文件映射
原创
©著作权归作者所有:来自51CTO博客作者仓储大叔的原创作品,请联系作者获取转载授权,否则将追究法律责任
使用springboot进行文件上传时,你将文件存到磁盘的一个位置,然后通过映射,将这个文件夹映射成应用程序访问的一个路径即可。
资源文件映射
@Configuration
public class WebAppConfigurer implements WebMvcConfigurer {
@Autowired
private OssSetting ossSetting;
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**")
.addResourceLocations("file:///data/upload");
}
}
文件上传
public String localUpload(MultipartFile file, String key) {
String day = DateUtil.format(DateUtil.date(), "yyyyMMdd");
String path = "/data/upload/" + day;
File dir = new File(path);
if(!dir.exists()){
dir.mkdirs();
}
File f = new File(path + "/" + key);
if(f.exists()){
throw new PkulawException("文件名已存在");
}
try {
file.transferTo(f);
return path + "/" + key;
} catch (IOException e) {
log.error(e.toString());
throw new PkulawException("上传文件出错");
}
}
作者:仓储大叔,张占岭,
荣誉:微软MVP