图片上传及保存方式有多种,此处只讲springBoot项目jar包运行时图片上传及显示问题。
上传图片最常见的就是直接上传到服务器的webapp目录下,或者直接上传服务的一个指定的文件夹下面,但是当项目以jar包方式运行时呢?此时上传还能正常上传只要已经建立相应的文件夹,但是显示的时候会找不到已经上传的图片资源,这时候我们需要在运行jar时将存放图片的文件夹加到springboot的classpath下,之后就可正常显示。需要了解的是springboot默认加载文件的路径:
- /META-INF/resources/
- /resources/
- /static/
- /public/
此处将项目图片指定存放在/static/下,所以代码中将图片路径指定为
private final String photoFolder="static/photo/";
启动之前在服务器建立文件夹
static/photo/
在运行jar包时输入命令为:
java -cp static -jar ***.jar
即将static整个文件夹映射到了jar里的static。图片上传时会上传到指定的文件夹下,加载的时候也能加载出来。