2016-10-07 34 views
0

我寫了一個桌面java應用程序與一個類(說ClassA)讀取文件的內容,處理它並返回一些結果。文件名是相對於項目使用的java桌面和web應用程序使用相同的文件路徑

File input = new File(「config.xml」);

現在,我想將項目升級到一個web項目。我寫了一個servlet,它調用相同的java類(即ClassA)來讀取同一文件的內容,但是這次我收到一條錯誤消息,說找不到文件。

我該如何重構我的代碼,以便桌面版和網頁版運行平穩。

回答

0

只需將文件config.xml複製到Web服務器上的適當位置,例如public_html/www/

Web應用程序的「工作目錄」不同 - 取決於您要部署到的Web服務器的配置。

0

如果您讀取的文件未指定路徑,則從當前目錄讀取,您可以使用System.getProperty(「user.dir」)訪問該目錄;

因此,您可以嘗試在Web應用程序中找出System.getProperty(「user.dir」)返回的值,並將該文件放置在那裏。 但這可能會因環境和servlet服務器(Tomcat等)而有所不同,並且可能不是可靠的解決方案。

另一種方法是更改​​代碼,以便從user.home目錄中讀取文件並將文件放在該文件中。

相關問題