上传图片

//上传图片
public ResponseVO uploadPicture(MultipartFile file) {
try {
// 当前项目位置
     /**
      获取src资源文件编译后的路径(即classes路径)
      1、xxx.class.getClassLoader().getResource(“”).getPath(); 

      获取classes路径下“文件”的路径

      2、xxx.class.getClassLoader().getResource(“文件”).getPath(); 

      缺少类加载器,获取xxx类经编译后的xxx.class路径

      3、xxx.class.getResource(“”).getPath(); **/

        String projectPath = ClassUtils.getDefaultClassLoader().getResource("").getPath();
// path
String imgPicPath = projectPath + "\\static\\img";
//文件夹
File imgsDir = new File(imgPicPath);
     //判断文件父目录是否存在
if (!imgsDir.exists()) {
imgsDir.mkdir();
}
// 创建文件id
String guid = UUID.randomUUID().toString();
String fileName = file.getOriginalFilename(); //获取文件名加后缀
String fileType = fileName.substring(fileName.indexOf(".")); // 后缀
if (!StringUtils.isBlankString(fileName)) {
fileName = guid + fileType;//新的文件名
//将图片存入文件夹
File targetFile = new File(imgsDir, fileName);
try {
//将上传的文件写到服务器上用户上传的临时文件夹中。
FileOutputStream out = new FileOutputStream(targetFile);
out.write(file.getBytes());
ImgPicVO vo = new ImgPicVO();
vo.setGuid(guid);
vo.setTypename(fileType);
vo.setImgurl("imgs/" + fileName);
vo.setAttachsize(file.getSize());
return ResponseVO.ok().setResultData("pic", vo);
} catch (Exception e) {
e.printStackTrace();
return ResponseVO.error("文件上传错误");
}
} else {
return ResponseVO.error("文件名无法读取");
}
} catch (Exception e) {
e.printStackTrace();
}
return ResponseVO.error("文件上传失败!");
}


posted @ 2021-12-16 11:01  丶Ronnie  阅读(136)  评论(0)    收藏  举报