如何使用 SpringBoot 自带的文件上传功能
时间: 2024-03-15 19:45:16 浏览: 79
使用SpringBoot自带的文件上传功能,可以通过以下步骤实现:
1. 在pom.xml中导入spring-boot-starter-web模块,该模块包含了文件上传所需的依赖。
2. 在需要进行文件上传的Controller中添加RequestMapping,指定上传文件的路径和请求方式。
3. 在Controller中添加MultipartFile类型的参数,用于接收上传的文件。
4. 使用java.io.File或java.nio.file.Path等工具类将文件保存到指定路径。
下面是一个简单的示例代码:
```java
@RestController
@RequestMapping("/upload")
public class UploadController {
@PostMapping("/file")
public String uploadFile(@RequestParam("file") MultipartFile file) {
try {
// 获取上传文件的文件名
String fileName = file.getOriginalFilename();
// 指定文件保存的路径
File dest = new File("D:\\upload\\" + fileName);
// 将上传文件保存到指定路径
file.transferTo(dest);
return "上传成功!";
} catch (IOException e) {
e.printStackTrace();
return "上传失败!";
}
}
}
```
在上述代码中,@RequestParam注解用于获取上传的文件,transferTo方法将文件保存到指定路径。
需要注意的是,如果上传的文件比较大,可能会导致内存溢出问题。可以使用MultipartFile的getInputStream方法获取输入流,使用FileOutputStream将文件写入到指定路径,避免一次性将整个文件读取到内存中。
阅读全文