本文介绍下SpringBoot中文件上传的操作
文件上传
1.表单页面
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>文件上传案例:</h1> <form action="/user/upload" method="post" enctype="multipart/form-data"> <label>账号:</label><input type="text" name="username"><br/> <label>照片:</label><input type="file" name="upload"><br> <input type="submit" value="提交"> </form> </body> </html>
2.控制层处理
添加控制器处理上传的文件信息
/** * @program: springboot-01-servlet * @description: 文件上传案例 * @author: 波波烤鸭 * @create: 2019-05-12 20:33 */ @RestController @RequestMapping("/user") public class UserController { @RequestMapping("/upload") public String upload(MultipartFile upload,String username) throws IOException { System.out.println("账号:"+username+" "+upload.getOriginalFilename()); upload.transferTo(new File("c:/tools/",upload.getOriginalFilename())); return "success:上传成功"; } }
3.编写启动类
@SpringBootApplication public class Springboot01ServletApplication { public static void main(String[] args) { SpringApplication.run(Springboot01ServletApplication.class, args); } }
4.设置上传参数
在application.properties中添加配置参数,此处要注意SpringBoot2.x版本的参数和1.x版本的参数设置有区别,需要注意
# SpringBoot 2.0 版本 spring.servlet.multipart.enabled=true # 设置单个文件上传大小 spring.servlet.multipart.max-file-size=200MB # 设置一次上传请求的文件的总大小 spring.servlet.multipart.max-request-size=200MB # SpringBoot 1.5.9 版本 #spring.http.multipart.enabled=true #spring.http.multipart.max-file-size=10MB #spring.http.multipart.max-request-size=100MB
5.测试
启动程序访问测试:
上传成功~~