java properties web_java web开发中获取tomcat上properties文件内容的方法

在java web开发的时候经常会用到读取读取或存放文件,这个文件的默认路径在哪里呢?写死在程序里面显然是可以的,但这样子不利于位于,假如有一天项目从window移植到linux,或者保存文件的路径变了,就需要去源代码中查找,进行替换,这样子不仅效率低,而且程序的耦合度也会过高,这里我用了一个properties文件用于存放文件的保存路径,需要保存或者读取都来自己properties所保存的路径。

1、我存放的propeities文件路径

因为linux和window上面的分盘是不一样的,所以我把保存文件路径的properties文件放在项目中,所以可以通过获取tomcat所以路径来获取该文件

586dc1c93c5902a86d20c7bf4b687744.png

2、properties文件内容

这里文件路径我使用了 / ,可以兼容linux系统和window,假如在程序中文件的分隔符建议使用File.separator作为分隔符,以兼容不同的操作系统。

filePath=E:/file

3、获取文件所在的路径

String dir = System.getProperty("user.dir"); //获得tomcat所在的工作路径

System.out.println(dir);

//获取到存储了文件存储位置的filedir.properties 文件路径

String dir2 = dir.substring(0, dir.length()-4) + File.separator +"webapps" + File.separator + "NGBOSSmonitor" +File.separator + "WEB-INF"

+ File.separator + "classes" + File.separator + "META-INF" + File.separator + "config" + File.separator + "filedir.properties";

dir 获取到的是  :D:\Tocat\tomcat6.0.37\bin

我获取的dir2 为    D:\Tocat\tomcat6.0.37\webapps\你的项目名\WEB-INF\classes\META-INF\config\filedir.properties

4、通过properties文件,获取到里面的filePath的值,即获得 E:/file

/**

* 获取filePath路径【properities文件】中key对应的值,

* @param filePath properities文件路径【包含properities文件】

* @param key 要查找的key值

* @return key对应的value

*/

public String GetValueByKey(String filePath, String key) {

Properties pps = new Properties();

try {

InputStream in = new BufferedInputStream (new FileInputStream(filePath));

pps.load(in);

String value = pps.getProperty(key);

//System.out.println(key + " = " + value);

in.close();

return value;

}catch (IOException e) {

e.printStackTrace();

return null;

}

}

到达这里,已经完整得获得了filedir.properties 里面得 filePath的值。

5、总结

开发过程中,使程序解耦合很重要,耦合程度越低,我们开发修改越容易。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值