我想从网络应用程序外部加载一个属性文件。获取属性文件的代码如下所示。
Properties p = new Properties();
p.load(this.getClass().getClassLoader().getResourceAsStream("a.properties"));
我正在使用 tomcat 服务器,我想将属性文件放在 tomcat 服务器中。我可以将它放在服务器的什么地方,以便在运行应用程序时在类路径中使用它?我不想更改上面的代码,因为我也必须在不同的服务器上运行相同的应用程序
最佳答案
我推荐第一个选项。将 a.properties 放在类路径中。然后加载:
Properties properties = new Properties();
properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("a.properties"));
通过这种方式,您可以加载相对于类路径“根”的属性。 Tt 建议为此使用由 Thread.currentThread().getContextClassLoader() 返回的 ClassLoader。
关于java - 在java应用程序中读取外部属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15727676/