前端上传图片,需要后台保存至服务器,返回图品地址
public String imageUpload(@RequestParam("file") MultipartFile[] file, HttpServletRequest request) throws IllegalStateException, IOException {
List<String> list = new ArrayList<>();
request.setCharacterEncoding("utf-8");
if(file!=null&&file.length>0){
//循环获取file数组中得文件
for(int i = 0;i<file.length;i++){
MultipartFile files = file[i];
//保存文件
String imageurl = ImageUpload(files);
list.add(imageurl);
}
}
return JsonResponseUtils.success("成功",list);
}
public String ImageUpload(MultipartFile file)
throws IllegalStateException, IOException{
String savePaths ="";
if (file!=null) {// 判断上传的文件是否为空
String type=null;// 文件类型
String fileName=file.getOriginalFilename();// 文件原名称
//System.out.println("上传的文件原名称:"+fileName);
// 判断文件类型
type = fileName.indexOf(".")!=-1?fileName.substring(fileName.lastIndexOf(".")+1, fileName.length()):null;
if (type!=null) {// 判断文件类型是否为空
if ("GIF".equals(type.toUpperCase())||"PNG".equals(type.toUpperCase())||"JPG".equals(type.toUpperCase())) {
// 项目在容器中实际发布运行的根路径
String realPath="/www/wwwroot/ghs.wyxflm.com";
// 自定义的文件名称
String trueFileName="/images/"+String.valueOf(System.currentTimeMillis())+"."+type; //15312196403485.jpg“
// 设置存放图片文件的路径
String path=realPath+trueFileName;
// 转存文件到指定的路径
File f = new File(path);
file.transferTo(f);
savePaths =trueFileName;
}else {
System.out.println("不是我们想要的文件类型,请按要求重新上传");
return null;
}
}else {
System.out.println("文件类型为空");
return null;
}
}else {
System.out.println("没有找到相对应的文件");
return null;
}
return savePaths;
}