package com.caimei.modules.sys.utils; import com.caimei.modules.archive.utils.OssArchiveUtil; import com.thinkgem.jeesite.common.config.Global; import com.thinkgem.jeesite.common.utils.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.util.HashMap; import java.util.Map; import java.util.UUID; /** * 上传图片公用方法 * 弃用request.getSession().getServletContext().getRealPath(image) * @author Lijun * @version 2019-06-28 **/ public class UploadImageUtils { static Logger logger = LoggerFactory.getLogger(UploadImageUtils.class); static String basedir = Global.getConfig("userfiles.basedir"); /** * 获取上传图片的绝对路径 * * @param imagePath 图片路径 */ public static String getAbsolutePath(String imagePath) { if(StringUtils.isNotEmpty(imagePath)){ String absolutePath = basedir + imagePath; logger.info("----------上传绝对路径为:"+ absolutePath); return absolutePath; }else{ return ""; } } public static Map uploadOss(MultipartFile multipartFile, String dirName) { Map map = new HashMap<>(); String fileAllName = multipartFile.getOriginalFilename(); String fileType = fileAllName.substring(fileAllName.lastIndexOf(".") + 1); String uuid = UUID.randomUUID().toString().replaceAll("-", ""); String filePath = uuid + "." + fileType; String contentType = OssArchiveUtil.getContentType(fileAllName); try { //保存本地 File file = OssArchiveUtil.ossUpload(multipartFile); logger.info("默认路径>>>" + file.getAbsolutePath()); //上传oss String url = OssArchiveUtil.ossUpload(filePath, dirName, file, contentType, null); //删除本地文件 OssArchiveUtil.deleteFile(file); map.put("success", true); map.put("msg", "操作成功"); map.put("ossName", filePath); map.put("url", url); } catch (Exception e) { e.printStackTrace(); map.put("success", false); map.put("msg", "操作失败"); logger.info("上传异常!!!"); } return map; } }