properties文件读取工具类

项目中防止硬编码,经常会将一些与业务相关的数据存在properties文件中,根据不同的key加载不同的数据,所以就会有读取properties文件的东西,这篇文章仅为了以后copy方便写的。

1.添加依赖:

<!-- https://mvnrepository.com/artifact/commons-configuration/commons-configuration -->
<dependency>
<groupId>commons-configuration</groupId>
<artifactId>commons-configuration</artifactId>
<version>1.10</version>
</dependency>

2.properties工具类编写

ps:代码中的日志用的是LomBok jar中的东西,人懒,就这样

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.18</version>
</dependency>
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.PropertiesConfiguration;

/**
 * @ClassName PropertiesUtil
 * @Description <读取properties文件信息>
 * @Author zhaiyt
 * @Date 2018/9/23 15:15
 * @Version 1.0
 */
@Slf4j
public class PropertiesUtil {


    public static Configuration config = null;

    static {
        try {
            config = new PropertiesConfiguration("configPro/test.properties");
        } catch (Exception e) {
            log.error("获取配置的属性失败:", e);
        }
    }

    /**
     * @Description <返回字符串的属性值,没有对应的key时返回null>
     * @Author zhaiyt
     * @Date 15:40 2018/9/23
     * @Param [key]
     * @return java.lang.String
     **/
    public static String getPropertiesStr(String key) {
        return config.getString(key);
    }

    /**
     * @Description <返回数字型的属性值>
     * @Author zhaiyt
     * @Date 15:40 2018/9/23
     * @Param [key]
     * @return int
     **/
    public static int getPropertiesNum(String key) {
        try {
            return config.getInt(key);
        } catch (Exception e) {
            log.error(e.getMessage());
            return -1;
        }

    }

    /**
     * @Description <返回布尔型的属性值>
     * @Author zhaiyt
     * @Date 15:40 2018/9/23
     * @Param [key]
     * @return java.lang.Boolean
     **/
    public static Boolean getPropertiesBoolean(String key) {
        try {
            return config.getBoolean(key);
        } catch (Exception e) {
            log.error("返回布尔型的属性值:", e);
            return false;
        }
    }

    /**
     * @Description <test>
     * @Author zhaiyt
     * @Date 15:41 2018/9/23
     * @Param [args]
     * @return void
     **/
    public static void main(String[] args) {
        String filename = getPropertiesStr("FILENAME");
        System.out.println(filename);
    }

}

3.写完了可以测试下,resources目录下创建configPro文件夹,创建properties文件,存几条数据试试

 


 

 

 

 




posted @ 2018-09-23 15:57  宅小涛  阅读(166)  评论(0编辑  收藏  举报