1.读取已经配置好的路径
/**
* 默认取配置文件中的路径
*/
@Value("${uploadFolder}")
private String fileSavePath;
解说:这边呢,我是取了配置文件中配置好的路径,这样的好处是方便配置。
2.开始文件保存的操作
/**
* @param file 传进来的文件
* @param fileSavePath 想要保存的路径
*/
public UploadResult uploadFile(MultipartFile file, String fileSavePath) {
//用来保存想要返回的文件信息
UploadResult uploadResult = new UploadResult();
//保存文件到指定目录
File newFile =null;
try {
//保存文件到指定目录
newFile = new File(fileSavePath+"无名.后缀");
///获取文件路径,判断是否存在
if (!newFile.getParentFile().exists()) {
//创建
newFile.getParentFile().mkdirs();
}
//保存文件
file.transferTo(newFile);
} catch (Exception e) {
e.getMessage();
log.error("上传文件错误!"+e.getMessage());
}finally {
newFile.delete();
}
return uploadResult;
}
3.文件实体类
/**
* 文件信息
*
* @author 杰
*/
@Data
public class UploadResult {
/**
* 文件唯一id
*/
private String fileId;
/**
* 文件后缀
*/
private String fileSuffix;
/**
* 文件原始名称(带后缀)
*/
private String originalFilename;
/**
* 文件最终名称(带后缀)
*/
private String finalName;
/**
* 最终文件存储路径
*/
private String fileSavePath;
}
一种比较简单的文件上传,不喜勿喷!