通过静态代码块读取配置文件配置静态属性

在项目开发中,通常会将一些经常变动的配置提取出来,做成一个配置类,通过该类的静态属性来引用配置。而在项目上线的时候,为了方便后期运维,将配置写在代码里面的方式是肯定不行的了,这时需要将配置信息提取出来,放到配置文件中。下面是一种采用静态代码块配置静态变量的方法。
java配置类,通过静态变量记录各种属性,在工程的其他方可以很方便的引用,可以根据配置文件里面配置的属性重新设置静态属性,如果没有配置文件则使用代码里面的默认值。
Config .java

package com.utils;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Properties;

public class Config {
    /**是否调试模式*/
    public static boolean isDebug=false;
    /**登陆超时时间*/
    public static long activeTime=5000L;
    /**日志路径**/
    public static String log_path="/default_log/";

    static{
        Properties pro = new Properties();
        InputStreamReader in=null;
            try {
                in=new InputStreamReader(Config.class.getResourceAsStream("/config.properties"),"utf-8");
                pro.load(in);
                isDebug=Boolean.parseBoolean(pro.getProperty("isDebug"));
                activeTime=Long.parseLong(pro.getProperty("activeTime"));
                log_path=pro.getProperty("log_path");
                System.out.println("配置文件读取成功:\n{isDebug:"+isDebug+",activeTime:"+activeTime+",log_path:"+log_path);
            } catch (FileNotFoundException e) {
                System.out.println("找不到配置文件");
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }finally {
                if(in!=null){
                    try {
                        in.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }
    }
    public static void main(String []ss){
        System.out.println("开始业务处理!");
    }
}

配置文件,放在项目根路劲下即可
config.properties

isDebug=true
activeTime=20000
log_path=/日志路径/log

运行main方法,可以看到在方法执行之前,各静态属性已经根据配置config.properties中的值进行了赋值,以下是测试输出结果。

配置文件读取成功:
{isDebug:true,activeTime:20000,log_path:/日志路径/log
开始业务处理!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾生有牙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值