在Spring Boot中,处理上传的MultipartFile文件通常需要以下几个步骤: 1. 创建一个接收文件的控制器方法: ```java @PostMapping("/upload") public ResponseEntity<?> uploadFile(@RequestParam("file") MultipartFile file) { if (file.isEmpty()) { return ResponseEntity.badRequest().body("File is empty"); } try { // 检查文件类型和大小 if (!allowedFileTypes.contains(file.getOriginalFilename().toLowerCase())) { return ResponseEntity.badRequest().body("Unsupported file type"); } if (file.getSize() > MAX_FILE_SIZE) { return ResponseEntity.badRequest().body("File size exceeds limit"); } // 保存文件 String filename = UUID.randomUUID().toString() + "." + file.getOriginalFilename(); File targetFile = new File(UPLOAD_FOLDER, filename); file.transferTo(targetFile); return ResponseEntity.ok("File uploaded successfully: " + filename); } catch (Exception e) { return ResponseEntity.badRequest().body("Error occurred while uploading file: " + e.getMessage()); } } ``` 2. 定义允许的文件类型和最大文件大小(这里是示例,你可以根据实际需求调整): ```java private static final List<String> allowedFileTypes = Arrays.asList("jpg", "png", "jpeg"); private static final long MAX_FILE_SIZE = 1024 * 1024 * 5; // 5MB ``` 3. 定义上传文件的目录(这里假设你有一个名为`UPLOAD_FOLDER`的系统属性或环境变量指向一个可写目录): ```java String UPLOAD_FOLDER = System.getProperty("user.home") + "/Downloads/uploaded_files"; ``` 这个例子中,我们首先检查文件是否为空、类型是否允许以及大小是否超过限制。如果一切正常,我们将文件保存到指定的目录,并返回一个确认消息。如果发生错误,我们会返回一个错误响应。 注意:在生产环境中,你应该考虑使用更安全的方式来存储文件,例如将文件保存到服务器的临时目录,然后在处理完成后移动到长期存储的位置。确保对上传的文件进行适当的验证,以防止恶意文件上传。 [2024-04-02 14:13:22 | AI写代码神器 | 459点数解答]