2017-01-19 20 views
0

我正在使用eclipse中的Web Contents文件夾下創建名爲「images」的文件夾的Web項目。在該文件夾中,我存儲用戶上傳的圖像,並使用相對路徑存儲圖像清理tomcat服務器刪除相對路徑下的所有文件夾

「String webAppPath = request.getServletContext()。getRealPath(」/ images「)」。

但是,當涉及到清潔Tomcat服務器以任何理由,「圖像」下存儲的所有文件夾或文件夾的圖像將被刪除..

請建議是否有任何解決方案,使所有的圖像或文件夾將不刪除。

回答

0

兩個建議:

  1. 不要使用ServletContext.getRealPath。這是一個使用的架構錯誤的方法。它應該真正從servlet規範中清除。

  2. 將您的文件存儲在以外的地方您的部署目錄,並且在取消部署時它們不會被刪除。

UPDATE 2017年1月23日

爲了更好地服務您的文件還給你(在上傳後),您需要將您的網址空間的一部分映射到你的應用程序。使用Tomcat 8和更高版本的最簡單方法是使用資源映射器。

<Resources> 
    <PostResources base="/real/path/to/images" 
      className="org.apache.catalina.webresources.DirResourceSet" 
      webAppMount="/images" /> 
</Resources> 

這將導致DefaultServlet從您/real/path/to/images目錄時,一個客戶端的URL /images空間內要求的東西提供文件。

+0

thanku for rply ...現在我試圖使用上下文路徑存儲在g:\ workspace \ Projectname \圖像下的圖像......他們仍然打算,但我無法在另一個jsp中顯示它們...我存儲的圖像名稱到數據庫(mysql) – Anju

+0

請建議我如何檢索它們 – Anju

+0

thanku..I將嘗試一個 – Anju

相關問題