1 package org.springboot.controller; 2 3 import org.apache.logging.log4j.LogManager; 4 import org.apache.logging.log4j.Logger; 5 import org.springboot.constant.Constant; 6 import org.springframework.stereotype.Controller; 7 import org.springframework.web.bind.annotation.*; 8 import org.springframework.web.multipart.MultipartFile; 9 10 import java.io.File; 11 import java.io.IOException; 12 13 /** 14 * @Auther:GongXingRui 15 * @Date:2018/12/25 16 * @Description: 文件下载 17 **/ 18 @Controller 19 public class FileUpload { 20 Logger logger = LogManager.getLogger(FileUpload.class); 21 22 @GetMapping("/upload") 23 public String upload() { 24 return "upload"; 25 } 26 27 @PostMapping("/upload") 28 @ResponseBody 29 public String upload(@RequestParam("file") MultipartFile file) { 30 if (file.isEmpty()) { 31 return "上传失败,请选择文件"; 32 } 33 34 String fileName = file.getOriginalFilename(); 35 // String filePath = "C:/Temp/upload"; 36 String filePath = Constant.CONFIG_PROPERTIES.getProperty("upload.path"); 37 File dest = new File(filePath + File.separator + fileName); 38 //判断文件是否已经存在 39 if (dest.exists()) { 40 logger.info("文件已经存在 -> " + dest.getPath()); 41 } 42 if (!dest.getParentFile().exists()) { 43 dest.getParentFile().mkdirs(); 44 logger.info("目录不存在,自动创建 -> " + dest.getParentFile().getPath()); 45 } 46 try { 47 file.transferTo(dest); 48 logger.info("上传成功"); 49 return "上传成功"; 50 } catch (IOException e) { 51 logger.error(e.toString(), e); 52 } 53 return "上传失败!"; 54 } 55 }