package org.javaboy.file_upload; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.UUID; @RestController public class FileUploadController { SimpleDateFormat sdf = new SimpleDateFormat("/yyyy/MM/dd/"); @PostMapping("/upload") public MapfileUpload(MultipartFile file, HttpServletRequest req){ Map result = new HashMap<>(16); //原名称 String originName = file.getOriginalFilename(); //如果上传文件后缀不是以PDF结尾则返回result if (!originName.endsWith(".pdf")){ result.put("status","error"); result.put("msg","文件类型不对"); return result; } String format = sdf.format(new Date()); //存放路径如果没有则新建一个 String realPath = req.getServletContext().getRealPath("/") + format; File folder = new File(realPath); if (!folder.exists()){ folder.mkdirs(); } String newName = UUID.randomUUID().toString() + ".pdf"; try { //把内存图片写入磁盘 file.transferTo(new File(folder,newName)); String url = req.getScheme() + "://" + req.getServerName() + ":" + req.getServerPort() + format + newName; result.put("status","success"); result.put("url",url); } catch (IOException e) { result.put("status","error"); result.put("msg",e.getMessage()); } return result; } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)