Springboot上传文件出现MultipartException


spring-boot项目,运行一段时间后,上传图片报错,如下:

org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.6309796379240031738.18000/work/Tomcat/localhost/opxx] is not valid] with root cause

原因是Linux会自动清理一段时间不适用的临时文件(具体清理规则可以参考https://www.cnblogs.com/MonkeyAC/articles/3631401.html),导致找不到临时目录而报错。

解决方法:

  1. 临时解决方法是直接创建临时文件目录

  2. 指定上传文件临时目录

@Configuration
public class MultipartConfig {
    /**
     * 文件上传临时路径
     */
    @Bean
    MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        factory.setLocation("/data/dubbo/cache");
        return factory.createMultipartConfig();
    }

}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM