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