本文介绍一下实现Spring Boot中的单文件上传
和多文件上传功能
的详细步骤。
一、单文件上传的代码实现步骤
- 创建一个
Controller类来处理文件上传请求
。 - 在Controller类中编写处理文件上传请求的方法,并使用 @PostMapping 注解标记。
- 在方法中使用 @RequestParam(“file”)
MultipartFile
file 来接收上传的文件。 - 使用
file.transferTo(new File("上传文件保存路径"))
将文件保存到指定路径。
代码如下:
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
@RestController
public class FileUploadController {
@PostMapping("/upload")
public String uploadFile(@RequestParam("file") MultipartFile file) {
try {
file.transferTo(new File("上传文件保存路径" + file.getOriginalFilename()));
return "文件上传成功";
} catch (IOException e) {
return "文件上传失败";
}
}
}
二、多文件上传的代码实现步骤
- 修改Controller方法的参数为 @RequestParam(“files”)
MultipartFile[]
files ,接收多个文件。 遍历文件数组
,逐个处理每个文件的上传。- 将每个文件保存到指定路径。
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
@RestController
public class MultiFileUploadController {
@PostMapping("/upload/multi")
public String uploadMultipleFiles(@RequestParam("files") MultipartFile[] files) {
for (MultipartFile file : files) {
try {
file.transferTo(new File("上传文件保存路径" + file.getOriginalFilename()));
} catch (IOException e) {
return "文件上传失败";
}
}
return "多文件上传成功";
}
}
在实际项目中,可以根据实际需求对文件上传功能进行定制和扩展,例如添加文件类型限制、文件大小限制、文件存储路径配置等。