读取不同位置的配置文件

  在开发和测试环境中,很容易混淆如何获取不同位置的配置文件。为了避免重复造轮子,在此记录一下自己的解决方案:

  可以提出如下设想:

    1、在开发环境下,读取resources下的config.properties文件
    2、在生产环境下,读取jar文件同级目录下的config.properties文件,如果没有该config.properties文件,则读取jar包中的config.properties

 1 public class ConfigUtils {
 2     /**
 3      * 根据配置文件中的内容获取配置信息内容
 4      * @param property 配置的属性
 5      * @return 配置属性值
 6      * @throws IOException
 7      */
 8     public static String getProperty(String property) throws IOException {
 9         Properties properties = new Properties();
10         InputStream inputStream = null;
11         // 获取.jar文件同级目录下,config.properties文件的绝对路径
12         String configFilePath = System.getProperty("user.dir") + File.separator + "config.properties";
13         // 如果在.jar文件同级目录下,config.properties文件存在,则使用该文件作为配置文件
14         if (new File(configFilePath).exists()) {
15             inputStream = new BufferedInputStream(new FileInputStream(configFilePath));
16         } else {
17             //如果在.jar文件同级目录下,config.properties文件不存在,则使用.jar文件中的config.properties文件作为配置文件
18             inputStream = ConfigUtils.class.getClassLoader().getResourceAsStream("config.properties");
19         }
20         properties.load(inputStream);
21         String value = properties.getProperty(property);
22         return value;
23     }
24 }

 

转载于:https://www.cnblogs.com/ppcoder/p/9006036.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值