spring boot单独传MultipartFile上传文件参数
时间: 2024-11-23 16:24:27 浏览: 10
Spring Boot 中,当你需要处理文件上传时,可以使用 `MultipartFile` 对象作为HTTP请求的参数。当你创建一个REST API接收POST请求,并期望包含文件数据,通常会在API的请求体部分设置为 `multipart/form-data` 类型。下面是一个简单的示例:
```java
@PostMapping("/uploadFile")
public ResponseEntity<?> uploadFile(@RequestParam("file") MultipartFile file) {
// 检查文件是否为空
if (file.isEmpty()) {
return ResponseEntity.badRequest().body("文件不能为空");
}
// 文件名和原路径
String originalFilename = file.getOriginalFilename();
try {
// 将文件保存到服务器某个目录下
Path targetPath = Paths.get("uploads/", originalFilename);
Files.copy(file.getInputStream(), targetPath);
return ResponseEntity.ok("文件已上传,名为 " + originalFilename);
} catch (IOException e) {
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("上传失败:" + e.getMessage());
}
}
```
在这个例子中,`@RequestParam("file") MultipartFile file` 表示从请求参数中获取名为 "file" 的 MultipartFile。用户可以通过前端表单选择文件并提交,Spring会自动解析这个字段。
阅读全文