1、application.properties
uploadPath=C:/images/
spring.mvc.static-path-pattern=/**
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,\
classpath:/static/,classpath:/public/,file:${uploadPath}
注意:
web.upload-path
这个属于自定义的属性,指定了一个路径,注意要以/
结尾;
spring.mvc.static-path-pattern=/**
表示所有的访问都经过静态资源路径;
spring.resources.static-locations
在这里配置静态资源路径,前面说了这里的配置是覆盖默认配置,所以需要将默认的也加上否则static
、public
等这些路径将不能被当作静态资源路径,在这个最末尾的file:${web.upload-path}
之所有要加file:
是因为指定的是一个具体的硬盘路径,其他的使用classpath
指的是系统环境变量
2、controller
@PostMapping("/upload")
@ApiOperation("上传")
public ObjectRestResponse<Map> upload(MultipartFile file) {
return new ObjectRestResponse<Map>().rel(true).data(baseService.upload(file));
}
3、service(UploadUtil工具类查看本人另一篇博客)
public Map upload(MultipartFile file) {
return UploadUtil.upload(file);
}
4、访问上传接口,上传文件:
{
"status": 200,
"data": {
"filePath": "/1544591593027.png",
"name": "1.png",
"type": ".png"
},
"rel": true
}
5、访问:
比如启动端口为8080,那么访问http://localhost:8080/1544591593027.png即可显示所上传的图片