用java spring boot 代码写一个接口,批量上传docx到指定Linux 的指定目录下
时间: 2023-06-08 21:06:33 浏览: 75
好的,你可以尝试以下的代码:
```java
@RestController
@RequestMapping("/upload") // 定义请求URL前缀
public class FileUploadController {
private final String UPLOAD_DIR = "/path/to/upload/dir"; // 定义上传目录
@PostMapping("/docx") // 定义POST请求URL
public String uploadDocxFiles(@RequestParam("files") MultipartFile[] files) {
// 检查上传目录是否存在,如果不存在,则创建
File uploadDir = new File(UPLOAD_DIR);
if (!uploadDir.exists()) {
if (!uploadDir.mkdirs()) {
return "Failed to create upload directory!";
}
}
// 遍历上传的文件
for (MultipartFile file : files) {
try {
String fileName = file.getOriginalFilename();
String filePath = UPLOAD_DIR + "/" + fileName;
// 将文件保存到指定目录
file.transferTo(new File(filePath));
} catch (Exception e) {
return "Failed to upload " + file.getOriginalFilename() + " => " + e.getMessage();
}
}
return "Files uploaded successfully!";
}
}
```
以上代码定义了一个 `FileUploadController` 类,用于接收批量上传的docx文件。在类上加上了 `@RestController` 和 `@RequestMapping` 注解,用于定义请求的URL前缀。在类中实现了一个用于批量上传docx文件的方法 `uploadDocxFiles`,使用了 `@PostMapping` 注解来定义POST请求的URL。在这个方法内部,首先检查上传目录是否存在,如果不存在,则创建。接着遍历上传的文件,将文件保存到指定的上传目录中。
注意,你需要将代码中的 `UPLOAD_DIR` 和 `/path/to/upload/dir` 替换为你要上传到的Linux服务器的目录。
以上代码是用Java语言在Spring Boot框架下实现的,可以将其打包为一个jar文件运行,然后通过Postman等工具测试上传功能。