文件上传失败,原因是临时目录被删除,简单粗暴的解决方式就是重启项目,重新生成临时目录,缺点就是过一段时间后,临时目录还会被清除。
解决方法是 修改application.yml配置文件,添加临时目录的配置如下:
spring:
servlet:
# 上传限定参数
multipart:
# 是否启用分段上传支持
enabled: true
# 最大请求大小
max-request-size: 1000MB
# 最大文件的大小
max-file-size: 5000MB
#上传文件的中间位置
location: /home/app/temp
然后在 启动类下面增加一个配置用来自动创建目录
@Configuration
@SpringBootApplication
@ServletComponentScan
public class Application {
@Value("${spring.servlet.multipart.location}")
private String tempDir;
@Bean
public void mkDir(){
File file = new File(tempDir);
if (file.exists()){
System.out.println("文件夹存在");
}else {
System.out.println("文件夹不存在");
file.mkdirs(); //创建文件夹
}
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}