zoukankan      html  css  js  c++  java
  • java读取properties文件的配置信息

    项目开发中,我们一般来向 application.properties 文件中放一些全局配置变量,以便程序中读取使用,本篇内容来演示从properties配置文件中读取键值。

    当然,我们不一定写入 application.properties 文件,也可以自定义,如:conn.properties

     application.properties 文件内容如下:

    #application.properties文件中配置信息
    
    siteName=博客园
    siteUrl=https://www.cnblogs.com/
    isShow=true
    age=15

    读取配置文件的工具类PropertiesUtil内容如下:

    package util;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.Properties;
    
    /**
     * Author: username
     * Date: 2019-04-11 14:30
     * Describe: 属性文件工具类
     */
    public class PropertiesUtil {
    
        private static final String DEFAULT_PROPERTIES="/application.properties";
    
        /**
         * 获取properties属性值
         * @param propKey
         * @return
         */
        public static String getPropValue(String propKey){
            try {
                Properties props = new Properties();
                InputStream inputStream = PropertiesUtil.class.getResourceAsStream(DEFAULT_PROPERTIES);
                //*.properties配置文件,要使用UTF-8编码,否则会现中文乱码问题
                BufferedReader bf = new BufferedReader(new InputStreamReader(inputStream,"UTF-8"));
                props.load(bf);
                return props.getProperty(propKey);
            }catch (IOException e){
                e.printStackTrace();
            }
            return null;
        }
    
    }

    使用如下:

    String siteName = PropertiesUtil.getPropValue("siteName");
    String siteUrl = PropertiesUtil.getPropValue("siteUrl");
    String isShow = PropertiesUtil.getPropValue("isShow");
    String age = PropertiesUtil.getPropValue("age");
    //字符串转bool
    Boolean bIsShow = Boolean.parseBoolean(isShow);
    if (bIsShow)
        System.out.println(String.format("%s:%s,服务程序员%s年",siteName,siteUrl,age));
    
    //输出
    博客园:https://www.cnblogs.com/,服务程序员15年
  • 相关阅读:
    Kuangbin带你飞 专题二十 斜率DP
    牛客每日一题3月
    2020 SWJTU-ICPC Training Round #2(18年福建省赛)部分题解
    codeforces每日一题31-40
    SWJTU校队训练&Codeforces&Atcoder&&牛客三月补题
    Kuangbin带你飞-专题九连通图
    POJ 3667 Hotel(线段树区间合并)
    AtCoder Beginner Contest 157(题解)
    2.22专项测试复盘
    2.21专项测试复盘
  • 原文地址:https://www.cnblogs.com/codecat/p/10694109.html
Copyright © 2011-2022 走看看