如何从我的战争中访问文本文件

时间:2009-11-20 04:04:42

标签: java configuration servlets java-ee war

我如何知道用于从WAR获取文件的文件引用。

WAR的结构是:

  

WAR
  SRC
     - 型号
     - 网站    建立
  的WebContent
    META-INF
    WEB-INF
     LIB

JSP在WebContent下,我已将config.txt文件放在WebContent文件夹下并尝试使用

  

BufferedReader in = new BufferedReader(new FileReader(“WebContent / config.txt”));

但这不起作用。有谁知道我需要传递什么参考或我如何弄明白。

4 个答案:

答案 0 :(得分:10)

答案 1 :(得分:2)

我认为只需在读取文件时从路径中删除WebContent,它就会有所帮助。

答案 2 :(得分:1)

这样做的一种方法是提出一个警告,我将在下面解释。你应该这样做:

// In a Servlet
ServletContext sc = getServletContext();
BufferedReader in = 
    new BufferedReader(new FileReader(sc.getRealPath("WebContent/config.txt"));

这假设您的servlet容器配置为将war文件扩展到相应的目录结构中。

答案 3 :(得分:-1)

访问此文件最安全的方法应该是这样的:

InputStream input = getClass()。getClassLoader()。getResourceAsStream(“your / path / enter / here”);