使用StandardServletMultipartResolver组件,因为是基于servlet3.0所以不用导依赖
1.创建HTML文件upload.html
Title
2.接口
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
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.UUID;
@RestController
public class FileUploadController {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@PostMapping("/upload")
public String upload(@RequestParam("uploadFile") MultipartFile uploadFile, HttpServletRequest request){
// 路径
String path = "C:\imgs"; //父文件夹路径,文件存储在当前路径下
//给上传的文件重命名,避免文件重名
String oldName = uploadFile.getOriginalFilename(); //获取上传文件的名称
String format = sdf.format(new Date()); //获取日期
String newName = UUID.randomUUID() +format+oldName.substring(oldName.lastIndexOf("."));
File folder = new File(path+"/"+newName);
//如果没有这个文件夹,则创建
if(!folder.isDirectory()){
folder.mkdirs();
}
try {
//下载文件
uploadFile.transferTo(folder);
return "true";
} catch (IOException e) {
e.printStackTrace();
return "false";
}
}
}
配置
#是否开启文件上传支持,默认是true spring.servlet.multipart.enabled=true #上传的单个文件的最大值 spring.servlet.multipart.max-file-size=10MB #多文件上传时文件的总大小最大值 spring.servlet.multipart.max-request-size= 100MB



