SpringBoot 文件上传:使用 MultipartFile 接收 FormData 中的 File 数据
在 Spring Boot 中,可以使用'MultipartFile'类型来接收 formdata 中的 file 数据。具体步骤如下:
- 在 Controller 中添加一个 POST 请求的方法,并使用'@RequestParam("file")'注解来声明一个'MultipartFile'类型的参数,如下所示:
@PostMapping("/upload")
public void uploadFile(@RequestParam("file") MultipartFile file) {
// 处理上传的文件
}
- 在前端页面的表单中,使用'enctype="multipart/form-data"'属性来声明表单的编码类型,并使用''元素来上传文件,如下所示:
<form method="POST" action="/upload" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit">上传文件</button>
</form>
- 在'uploadFile'方法中,可以使用'file.getBytes()'方法来获取上传文件的字节数据,也可以使用'file.getInputStream()'方法来获取上传文件的输入流,如下所示:
@PostMapping("/upload")
public void uploadFile(@RequestParam("file") MultipartFile file) {
try {
// 获取上传文件的字节数据
byte[] data = file.getBytes();
// 获取上传文件的输入流
InputStream inputStream = file.getInputStream();
// 处理上传的文件
} catch (IOException e) {
e.printStackTrace();
}
}
注意:在使用'MultipartFile'类型接收文件数据时,需要在'application.properties'配置文件中添加以下配置:
spring.servlet.multipart.max-file-size=10MB
spring.servlet.multipart.max-request-size=10MB
以上配置表示允许上传的文件最大大小为10MB。可以根据实际情况进行调整。
原文地址: https://www.cveoy.top/t/topic/mUP5 著作权归作者所有。请勿转载和采集!