tomcat重啓或關閉後,上傳文件消失

今天我負責的活動模塊出現了一個奇怪的問題,當tomcat服務器重啓時,之前上傳的活動圖片就不見了,剛開始以爲是發版腳本出了問題,後檢查排除,再去找代碼,看到在保存文件時,有一步出現錯誤:

File file = new File("xxx");
File dest = new File("xxx_new");
dest.deleteOnExit();
file.renameTo(dest);
由於圖片要用活動的id編號命名,所以需要在保存了活動數據以後,獲取了id,然後將上傳的圖片重新命名,而上面幾句話,我原本的意圖是:

獲取上傳了的圖片,new一個新的圖片名稱,把原來的圖片名換爲這個圖片名,如果本來就有一個文件叫這個新圖片名,就先把這個文件刪除再重命名。但這個地方看錯了,把

deleteOnExit()理解爲了deleteOnExist(),而deleteOnExit()的含義爲,當jvm退出時,刪除該文件。

所以,就出現了上面,tomcat關閉或重啓後,圖片消失的問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章