Java中使用UUID给图片命名的文件上传方法

    xiaoxiao2022-07-04  128

    场景

    照片上传时给重命名时使用UUID进行重命名。

    实现

    在实现方法上传的方法中调用工具类的地方

    Map<String, Object> result = ImageUtil.getInstance().uploadImgByUuid(Constants.UPLOAD_IMG_COMMENTFILE,        imgFile);

    图片上传工具类中的方法:

    public class ImageUtil {  private static ImageUtil instance;    /**   * 定义私有构造方法实现单例   */  public ImageUtil() {   super();  }  public synchronized static ImageUtil getInstance() {   if(instance == null) {    instance = new ImageUtil();   }   return instance;  } public Map<String,Object> uploadImgByUuid(String dir,MultipartFile file) {      Map<String,Object> jsonResult = new HashMap<String, Object>();   String msg = "";   try {        String fileName = file.getOriginalFilename();    long fileSize = file.getSize();        String exts = fileName.substring(fileName.lastIndexOf(".") + 1);    if (fileSize > ResourceUtil.getUploadImageMaxSize()) {     msg = "上传图片应小于2MB!";     jsonResult = JsonResult.jsonWsReturn(1, msg ,false);     LogService.getInstance(this).info("『功能:存储图片』失败 ,msg:" + msg);     return jsonResult;    }    if (exts.indexOf(ResourceUtil.getUploadImageExts()) != -1) {     msg = "上传格式应属于:" + ResourceUtil.getUploadImageExts();     jsonResult = JsonResult.jsonWsReturn(1, msg ,false);     LogService.getInstance(this).info("『功能:存储图片』 ,msg:" + msg);     return jsonResult;    }    //图片命名规则:uuid命名方式       fileName =UUID.randomUUID().toString()+"."+exts;        String path = dir + File.separator + fileName;    //删除原文件    //防止误传地址误删信息    // 存储路径        String dirPath = ResourceUtil.getUploadImageRelativeRoot2()+ dir;        String filePath = ResourceUtil.getUploadImageRelativeRoot2() + path;    LogService.getInstance(this).debug(filePath);    boolean resultDir = FileUtil.makedir(dirPath);    if (resultDir == true) {     File targetFile = new File(filePath);      file.transferTo(targetFile);     jsonResult = JsonResult.jsonWsReturn(0,fileName ,true);     LogService.getInstance(this).info("『功能:储存图片』: ,fileName:"       + fileName + " ,msg:" + msg);    } else {     msg = "建立文件夹" + dirPath + "失败!";     jsonResult = JsonResult.jsonWsReturn(1, msg ,false);     LogService.getInstance(this).error("建立文件夹" + dirPath + "失败,完整路径为:dirPath");    }   } catch (Exception e) {    msg = "上传图片失败!";    jsonResult = JsonResult.jsonWsReturn(1, msg ,false);    LogService.getInstance(this).error("上传图片失败",e);   }   return jsonResult;  } }

     

    最新回复(0)