package com.zzl.controller;
import org.apache.commons.io.FileUtils;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.util.List;
/**
* @author zzl
* @Date 2022/1/16
* @description 文件上传
*/
@RestController
public class FileUploadController {
/**
* 模拟文件上传
*
* @param fileList
* @return
*/
@RequestMapping(value = "uploadFiles", method = RequestMethod.POST)
public String uploadFiles(@RequestParam("file") List<MultipartFile> fileList) {
try {
// 临时路径,上传文件至该路径下
String tempPath = System.getProperty("user.dir") + "\\upload\\";
File tempFile = new File(tempPath);
if (!tempFile.exists()) {
tempFile.mkdirs();
}
if (!CollectionUtils.isEmpty(fileList)) {
for (MultipartFile multipartFile : fileList) {
String path = tempPath + multipartFile.getOriginalFilename();
File file = new File(path);
// 方法1
// multipartFile.transferTo(file);
//方法2
FileUtils.copyInputStreamToFile(multipartFile.getInputStream(), file);
// multipartFile-->file临时文件后,可以根据自己的业务需求,将文件上传至对应的文件系统或者其他路径下
// **
// ** 实现自己的文件上传逻辑
// **
// 删除临时文件file,为了看上传效果,可以暂时屏蔽
// FileUtils.forceDelete(file);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return "success";
}
}
文件上传逻辑
最新推荐文章于 2024-05-14 08:07:26 发布