在JSP Servlet项目中放置本地.xml和.json文件的位置

时间:2015-04-30 14:25:27

标签: jsp servlets

我有一个JSP / Servlet项目,我想从我的一个servlet访问.json或.xml文件。但是我在哪里放置这些文件?

enter image description here

我可以访问

  String filename = "/WEB-INF/myFile.xml";

但是如下:

    filename ="/WEB-INF/resources/myFile.xml";

?如何从/ resources获取文件?

  ServletContext context = getServletContext();
  InputStream is = context.getResourceAsStream(filename);

我在哪里保存文件,我希望从我的servlet部署和访问我的应用程序到tomcat / webapps?

1 个答案:

答案 0 :(得分:0)

将它们放在 classpath (放置java类的地方)中。如果你想把它们放在单独的文件夹(例如资源)中创建一个资源包并在那里存储文件,那么你将能够使用以下方式访问和阅读它们:

如果文件存储在类路径根目录中:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("myFile.xml");

如果文件存储在资源包中:

InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("resources/myFile.xml");

请注意,/分隔符是特定于操作系统的,因此最好使用System.getProperty("file.separator");来获取它,并且不要担心操作系统。