JavaEE项目中自定义.properties文件的读取

  关于相关服务的密钥配置,习惯于写在一个静态参数配置类中。但,现在写的是Java,不似PHP。PHP,部署上线的代码就是.php后缀,需要修改的时候,大不了修改一下代码。而Java项目是需要打包再部署上线的。.java后缀代码编译完毕,是.class后缀文件,一般的编辑器还打不开这类文件。所以,就需要把相关的配置信息写道properties文件中。

引入jar包

    <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>1.6</version>
    </dependency>

新建config.properties

server.url=https://api.net.im/xxxxx

新建ConfigConsts.java

import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.log4j.Logger;

public class ConfigConsts {

    private static PropertiesConfiguration properties = null;
    private static final Logger logger = Logger.getLogger(ConfigConsts.class);
    static {
        try {
        properties = new PropertiesConfiguration("config.properties");
    } catch (ConfigurationException e) {
            logger.debug("配置文件未加载成功");
    }
    }
    public static final String SERVER_URL = properties.getString("server.url");
}

使用(和使用ConfigConsts的静态常量一样的使用方法)

    ...
    System.out.println(ConfigConsts.SERVER_URL);
    ...

  个人感觉,这种方法比使用注解方式,更容易统一管理和配置。注解的方式,感觉很麻烦,昨天搞了一天,不能达到满意的效果。

0

发表评论