我正在从 java DAO 实现读取属性文件以加载属性对象,如下面给出的代码
this.getErrorproperties().load(
new FileInputStream(new File("").getAbsolutePath()
+ "/conf/error/error.properties"));
虽然测试它工作正常,但当我尝试在 jboss 5 服务器上部署应用程序时。应用部署失败,因为绝对路径被认为是jboss的bin目录。
我希望 Jboss 找到它相对于ear文件的路径。我面临的另一个问题是我的路径相对于项目或ear文件的主路径将在第一次和以后不同。
请建议程序员针对这种情况遵循的当前方法。 (我是新人)
最佳答案
您需要将属性文件放在类路径中。如果您的属性文件位于包 foo.bar 中,那么您可以使用加载属性文件,
this.getErrorproperties().load(getClass().getResourceAsStream("/foo/bar/error.properties"))
路径中的前导斜杠表示绝对路径。如果没有前导斜杠,路径是相对于其中类的包的。
关于java - jboss:通过java代码访问文件资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3329728/