2012-01-23 118 views
0

我有一個csv文件附加到我的Eclipse項目上,這個項目有一個servlet部署在本地JBoss服務器上進行開發。從servlet到我的JBoss服務器上的文件的路徑

我要訪問此csv文件,我可以用我的電腦上的絕對路徑,像這樣:

CSVExtractor csvE = new CSVExtractor("C:/workspace/myproject/WebContent/data.csv"); 

與方法的問題是THA它不以任何方式攜帶。我相信JBoss提供了一種方法,所以我可以訪問我的項目中的文件,但我沒有找到它。什麼是首選方法?

PS:我也認爲將這樣的文件放入我的WebContent文件夾是個不好的做法,那麼從用戶中分離出這種東西的最佳方法是什麼?

回答

0

將它添加到您的類路徑(WEB-INF/classes或lib)中並作爲類路徑資源進行訪問。這是一個example。類路徑資源是可移植的,不像它們與部署歸檔文件本身捆綁在一起。

這是一個tutorial爲您開始。

+0

當你說 「把它添加到/ WEB-INF/lib目錄」 你的意思是把data.csv該文件夾中?我已經做到了這一點,但我無法確定現在的路徑。它是/myproject/WEB-INF/lib/data.csv?我錯過了什麼嗎? –

+0

@ThiagoMoraes將它移動到類。閱讀我已添加的教程 –

0

您可以創建一個指定目錄的屬性文件。這將允許您的用戶修改該目錄並熱切換.csv而無需重新部署存檔。

0

試試這個:

String path = Thread.currentThread().getContextClassLoader().getResource("language/file.xml").getPath(); 

    File f = new File(path); 

    System.out.println(f.getAbsolutePath());