Java 獲取properties配置文件

/**
 * @Description Url地址管理幫助
 * @Author WangKun
 * @Date 2019/11/6 15:36
 * @Version
 */
public class HttpClientPropertiesUtil {

    private static Logger logger = LoggerFactory.getLogger(HttpClientPropertiesUtil.class);

    private static Properties props;
    private static InputStreamReader inputStreamReader;


    // 使用靜態代碼塊,在程序初始化的時候加載,只加載一次
    static {
        loadProperties();
    }

    /**
     * @Description 防止多個地方同時被調用
     * @param
     * @throws
     * @Return void
     * @Date 2019-11-06 16:23:17
     * @Author WangKun
     **/
    private static synchronized void loadProperties(){
        props = new Properties();
        try {
            // 利用反射獲取配置文件信息
            inputStreamReader = new InputStreamReader(HttpClientPropertiesUtil.class.getClassLoader().getResourceAsStream("httpClient.properties"), "UTF-8");
            props.load(inputStreamReader);
        } catch (IOException e) {
            logger.error("配置文件獲取異常", e);
        }finally {
            try {
                // 讀取完之後必須關閉
                inputStreamReader.close();
            } catch (IOException e) {
                logger.error("獲取配置文件關閉異常", e);
                e.printStackTrace();
            }
        }
    }

    /**
     * @Description 根據配置文件的key獲取值
     * @param key
     * @throws
     * @Return java.lang.String
     * @Date 2019-11-06 15:56:46
     * @Author WangKun
     **/
    public static String getPropertyValue(String key) {
        String value = props.getProperty(key.trim());
        if (StringUtils.isBlank(value)) {
            return null;
        }
        return value.trim();
    }
}

調用方法:

HttpClientPropertiesUtil.getPropertyValue("配置文件的key")

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章