gpt4 book ai didi

java - Web Java 应用程序中的 xml 属性文件位置

转载 作者:行者123 更新时间:2023-11-29 08:17:15 24 4
gpt4 key购买 nike

我有一个 java 网络应用程序,在一个 servlet 中,我需要从 xml 文件加载属性。

代码是

XMLReader reader = XMLReaderFactory.createXMLReader();
...
FileInputStream fis = new FileInputStream("myconf.xml");
reader.parse(new InputSource(fis));

我的问题是:myconf.xml 文件应该放在 war 文件的什么位置,以便 servlet 可以找到它?

谢谢

最佳答案

不要将 FileInputStream 与相对路径一起使用。您将依赖于您完全无法从 Java 代码内部控制的当前工作目录。而是将文件放在类路径中并使用 ClassLoader#getResourceAsStream() .

ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream input = classLoader.getResourceAsStream("/myconf.xml");

此示例期望文件位于类路径的根目录中。从 IDE 的角度来看,这可以是 src 文件夹的根目录或 /WEB-INF/classes 文件夹的根目录。您甚至可以将它放在外部其他地方,并将其(绝对!)路径添加到服务器配置中某处的运行时类路径。

另见:

关于java - Web Java 应用程序中的 xml 属性文件位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3704516/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com