配置文件
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
servlet:
multipart:
max-file-size: 10MB
max-request-size: 100MB
分别配置jsp的前后缀、上传文件总的最大值和单个文件最大值
上传文件工具类
这里的静态方法executeUpload接收两个参数,分别是服务器储存文件位置和文件对象类。将接收的文件对象转储到服务器目录中。
package com.example.fileuploadbyform.utils;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.util.UUID;
public class FileUtil {
public static void executeUpload(String uploadDir, MultipartFile file) throws Exception{
//文件后缀
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
//文件随机名
String filename = UUID.randomUUID()+suffix;
//创建文件对象
File serverFile = new File(uploadDir + filename);
//转储文件
file.transferTo(serverFile);
}
}
单文件上传
我们准备一个upload.jsp文件用来上传文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="上传">
</form>
</body>
</html>