springboot上傳文件出錯問題的解決方法-創(chuàng)新互聯(lián)

這篇文章主要介紹springboot上傳文件出錯問題的解決方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比鞏留網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式鞏留網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鞏留地區(qū)。費用合理售后完善,十年實體公司更值得信賴。

這篇文章主要介紹了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.2737591724424319502.8062/work/Tomcat/localhost/ROOT] is not valid

有一段時間沒有使用測試環(huán)境的測試服務(wù)器。

然后昨天想使用一下測試環(huán)境,進行過文件的上傳。以前也沒有問題,但是今天突然不能使用,打開日志文件發(fā)現(xiàn)是報錯了,報錯為上面的報錯。是缺少文件。

但是一般也沒有人對服務(wù)器上的文件進行清理。??????

后來根據(jù)多方查找,找到了原因,原來是Linux下會自動清除tmp目錄下10天沒有使用過的文件,SpringBoot啟動的時候會在/tmp目錄下生成一個Tomcat.*的文件目錄,用于"java.io.tmpdir"文件流操作,因為放假期間無人操作,導致Linux系統(tǒng)自動刪除了臨時文件,所以導致上傳報錯

解決方案

一、臨時方案(快速解決方案,但是不推薦)

重啟服務(wù),重啟后被刪除的tomcat目錄會重新生成

二、添加啟動配置項(如果你的應(yīng)用是用腳本啟動的,可以考慮)

啟動時增加參數(shù)-Djava.io.tmpdir=自定義目錄

三、添加文件配置類(添加配置類,可以考慮)

@Bean MultipartConfigElement multipartConfigElement() {  MultipartConfigFactory factory = new MultipartConfigFactory();  factory.setLocation("/var/tmp");  return factory.createMultipartConfig();}

四、修改tmpwatch 刪除文件的邏輯(修改了系統(tǒng),不推薦)

tmpwatch 刪除文件的邏輯

五、修改application.yml配置文件(推薦)

設(shè)置文件臨時存儲路徑

spring.http.multipart.location = /var/tmp

以上是“springboot上傳文件出錯問題的解決方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

分享名稱:springboot上傳文件出錯問題的解決方法-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://muchs.cn/article30/cocspo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、軟件開發(fā)、手機網(wǎng)站建設(shè)、定制網(wǎng)站、用戶體驗、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設(shè)