如何在部署应用程序时访问XML文件?
我正在运行一个带有几个类和一个简单的休息服务的动态Web应用程序,但是我没有任何实际的servlet,所以访问ServletContext是不可能的,(据我所知)所以使用getRealPath()不行。
一个例子: 我有一个类DBcon连接到数据库,但必须从XML文件加载属性,这些文件位于/xml/db/oracle-properties.xml
在普通的Java项目中,您只需使用文件输入流,但它不适用于动态Web应用程序。
我怎样才能加载xml文件?
答案 0 :(得分:3)
如果文件在类路径中,您可以将其作为输入流获取,如下所示:
InputStream in = this.getClass().getResourceAsStream("xml/db/oracle-properties.xml");
答案 1 :(得分:1)
我通过阅读:Where to place and how to read configuration resource files in servlet based application?
来理解我已将xml文件放在WEB-INF / classes中,然后使用此代码加载它:
InputStream xmlFile = Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);
prop.loadFromXML(xmlFile);