java 读取配置文件路径问题

我看了资料 Properties 读取配置文件都只能读取src下的文件,这个确实是可以实现,但是项目的配置文件是放在 web/WEB-INF/configs/jdbc.properties 文件夹下的,这个应该如何读取呢?

Properties pro = new Properties();
ClassLoader cl = Thread.currentThread().getContextClassLoader();
InputStream stream = cl.getResourceAsStream("com/pyllot/jdbc.properties");// 这个地方可以读取src下的配置文件,但是我现在的配置文件位置是在web/WEB-INF/configs下.如果stream = cl.getResourceAsStream("web/WEB-INF/configs/jdbc.properties")这样写,那么就会报空指针,应该是找不到文件的问题. ....
pro.load(stream);

高手指教 QQ785035779....

你是web工程 要能得到request对象就好了。
String path=servletContext.getRealPath("/"); 得到的就是 编译后web文件夹的路径
path+"/WEB-INF/configs/jdbc.properties" 就可以了。

还是建议用上面的方法

2 上边cl.getResourceAsStream("") 我试了一下只能得到classes下面的文件
也就是\WEB-INF\classes\下的文件
向上去 /WEB-INF/就不行了。

3 可以通过cl得到一个file 你对file进行操作区找 那个配置文件。。
new File(cl.getResource("").getPath()) //这个file就是classes文件夹了

/WEB-INF/
--/configs/jdbc.properties
--/classes/这里就是src的路径了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-26
InputStream is = this.getClass().getClassLoader()
.getResourceAsStream("../lib/config.properties");
第2个回答  2010-11-24
读取配置文件最好用java.util.ResourceBundle类。
配置文件xxxx.properties文件要放在classes的编译路径下面。
比如xxxx.properties文件放在了classes目录下,读取时这样调用
// 读取配置文件
ResourceBundle resourcesTable = ResourceBundle.getBundle(“xxxx”);
// 取得strKey对应的value值
String strValue = resourcesTable.getString("strKey");

参考资料:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网