1. 准备工作
在开始之前,确保你已经创建好了一个Spring Boot项目,并且配置了适当的开发环境。你可以使用Spring Initializr进行项目的初始化,然后添加所需的依赖。
2. 设置文件上传的目标路径
为了存储上传的文件,我们首先需要创建一个文件夹。在项目的根目录下,创建一个名为 "uploads" 的文件夹。在Spring Boot中,我们需要配置应用的属性,以指示文件上传的目标路径。
propertiesCopy code
# application.properties
spring.servlet.multipart.location=uploads
3. 编写文件上传的后端代码
创建一个Controller类,用于处理文件上传请求。在这个Controller中,我们将编写一个方法来接收上传的文件并将其保存到指定路径。
javaCopy code
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
@RestController
@RequestMapping("/api")
public class FileUploadController {
private static final String UPLOAD_DIR = "uploads";
@PostMapping("/upload")
public String uploadFile(@RequestParam("file") MultipartFile file) {
try {
if (file.isEmpty()) {
return "Please select a file to upload.";
}
byte[] bytes = file.getBytes();
Path filePath = Paths.get(UPLOAD_DIR, file.getOriginalFilename());
Files.write(filePath, bytes);
return "File uploaded successfully.";
} catch (IOException e) {
return "Failed to upload file.";
}
}
}
4. 实现文件上传的前端界面(可选)
如果你想为文件上传功能提供一个前端界面,你可以创建一个简单的HTML表单。以下是一个基本示例:
htmlCopy code
<!DOCTYPE html>
<html>
<head>
<title>File Upload</title>
</head>
<body>
<h2>Upload a File</h2>
<form action="/api/upload" method="post" enctype="multipart/form-data">
<input type="file" name="file" required>
<button type="submit">Upload</button>
</form>
</body>
</html>
5. 测试文件上传功能
使用工具如Postman或浏览器来测试上传文件的功能。确保上传的文件能够成功保存到指定的目标路径中。你可以通过访问 /api/upload
接口来测试文件上传。