?
問題描述
我在Eclipse上運行專案的時候,在我用fileUpload上傳圖片,等到下一次Tomcat重繪的時候,這個照片就沒了,而且點擊查看那個檔案夾也查看不到有圖片檔案,
原因
我后來在網上查詢相關資料發現是Eclipse整
合Tomcat的問題,因為他們整合之后,你用相對路徑上傳的圖片會上傳到Tomcat服務器上面,但Eclipse的每一次專案代碼的編譯更新(熱部署)或者重啟Tomcat服務器,Tomcat服務器會把之前的專案檔案洗掉, 并且隨時保持于eclipse中專案的同步,所以圖片上傳之后一會兒就會消失,
解決方法1
不用相對路徑,使用絕對路徑,這樣檔案上傳的地方就會是在本機的專案里面了,而Tomcat同步更新也不會有問題,
String fname = fi.getName();
String[] str = fname.split("\\.");
String name = UUID.randomUUID().toString()+"."+str[str.length-1];
String filePath = "E:\\Java\\Web\\yueyouwang\\src\\main\\webapp\\tupian\\";//創建一個存放上傳檔案的目錄
b.setFengmian("tupian/"+name);
fi.write(new File(filePath,name));
fi.delete();
但這個方法有一定的缺陷性,你每次上傳了一個新的圖片之后,你直接在網頁查看不了,你要到Eclipse的那個檔案夾滑鼠右鍵點擊重繪之后,才能在網頁上看到你上傳的圖片,

?編輯
解決方法2
因為這是Tomcat服務器與Eclipse同步的問題,所以,我將專案打成war包再放到Tomcat服務器下運行就沒問題了,
?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/487416.html
標籤:Java
上一篇:Guava中的封裝的Map操作
