spring Boot版本 1.4.5
报错原因:
org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [C:\Users\admin\AppData\Local\Temp\tomcat.3797255209336115746.9008\work\Tomcat\localhost\ROOT\data\uploadTemp] is not valid
上传文件大小了584K,明显没有触及到什么 文件太大之类的短板。
关键问题在于:
The temporary upload location [C:\Users\admin\AppData\Local\Temp\tomcat.3797255209336115746.9008\work\Tomcat\localhost\ROOT\data\uploadTemp] is not valid
字面意思:
本地的临时存储位置:C:\Users\admin\AppData\Local\Temp\tomcat.3797255209336115746.9008\work\Tomcat\localhost\ROOT\data\uploadTemp 不可达。
那么本地明显没有这个位置!出现的原因可能是莫名其妙被删除了。
spring boot找不到这个地址 就抛出来这个一场了。
看来是Spring boot的临时存储位置出问题了。
那么我重写一下他的临时存储位置:
第一种 方法 jar包启动时 利用 参数 来设置临时路径。 费劲,放弃。
第二种方法 注入bean,自定义修改文件临时存储路径。有代码侵入量,可以考虑。
@Bean
MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
factory.setLocation("d://temp");
return factory.createMultipartConfig();
}
第三种方法:
application.yml里
设置文件临时存储路径
spring.http.multipart.local =
三种方法。看自己选择了。