public class UploadUtil {
private final static Logger LOG = LoggerFactory.getLogger(UploadUtil.class);
public final static String CDN_URL = "/data/cdnfiles/"; // 图片CDN加速地址
public final static String IMG_URL = "http://i.shihuowang.com";/**
* @author: chenzhihao
* @description: files[1]="视频1“,files[2]="视频2",path 保存地址
* @date: 2021/4/6
* @param path 保存地址
* @return
*/
public List<String> uploadFile(HttpServletRequest request, String path){
log.info("request: "+request.getSession().getServletContext().getRealPath("file"));
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
commonsMultipartResolver.setDefaultEncoding("utf-8");
// File imgFile=null;
String url=null;
List<String> pathRul=new ArrayList<>();
File newFile=new File(path);
if(!newFile.exists()){
newFile.mkdirs();
}
if (commonsMultipartResolver.isMultipart(request)){
MultipartHttpServletRequest mulReq = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> map = mulReq.getFileMap();
// key为前端的name属性,value为上传的对象(MultipartFile)
for (Map.Entry<String, MultipartFile> entry : map.entrySet()) {
// 自己的保存文件逻辑
log.info("名称:" +entry.getValue().getOriginalFilename());
// imgFile = new File(path + "/" + entry.getValue().getOriginalFilename());
url=path+entry.getValue().getOriginalFilename();
log.info("图片存储的路径:" + url);
try {
File file1=new File(System.getProperty("user.dir"));
String uploadFile = uploadFile(entry.getValue(), file1.getAbsolutePath() + path);
pathRul.add(path+uploadFile);
}catch (Exception e){
pathRul.add(e.getMessage());
return pathRul;
}
}
return pathRul;
}else {
return pathRul;
}
}
public String uploadFile(@RequestParam("file") MultipartFile multipartFile, String path) {
String filename=multipartFile.getOriginalFilename();
String[] strings = filename.split("\\.");
String name = System.currentTimeMillis()+"."+strings[strings.length-1];
try {
File file=new File(path,name);
if(!file.exists()){
file.mkdirs();
}
multipartFile.transferTo(file);
return name;
}catch (Exception e){
return e.getMessage();
}
}
}