2015-08-25 27 views
0

我在myApp/WebContent/resources /文件夾中的某個位置創建一個與我的webapp相關的文件夾時遇到問題。在webmvc中獲取WebContent的相對路徑webmvc app

String folderPath="/WebContent/resources/"+title; 

    File folder=new File(folderPath); 
    if(!folder.exists()) 
     System.out.println("Folder created "+folder.mkdir()); 

輸出總是假

+0

你創建這個路徑: - 字符串FOLDERPATH = 「/的WebContent /資源/」 +稱號; –

+1

您不應該嘗試創建這樣的文件夾,因爲不需要servlet容器將您的Web應用程序放入文件中。 – Raedwald

+0

@Raedwald說了些什麼。部署新版本的應用程序時,這個「data」文件夾會發生什麼? –

回答

1

你可以做一些下面幾行: -

String folderPath= request.getServletContext().getRealPath("/"); 
    File file = new File (folderPath+"title"); 
    file.mkdir(); 

上面的代碼將創建內servletcontainer/webappContext一個文件夾名稱。

正如@Raedwald所提到的,在webappContext中創建任何文件夾都不是一個好習慣。

請參考以下鏈接:Best practice to store temporary data for a webapp

+0

所以這是一個很好的方法來做到這一點?如果我將我的項目移動到服務器上,這會起作用嗎? – dskfdskjgds

+0

是的,它會一直工作,因爲它使用相對路徑。你沒有硬編碼任何東西。 –

+0

好的。但我不想存儲臨時信息。比方說,我想創建一個照片庫,它提供用戶上傳圖片的權利,這些圖片可能稍後會加載到網站上並被任何人看到。將它們作爲字節存儲在數據庫中會更好嗎?或者只是將所有資源移到網頁內容之外? – dskfdskjgds