zoukankan      html  css  js  c++  java
  • Java加载Properties配置文件工具类

    Java加载Properties配置文件工具类

    import org.apache.commons.lang3.StringUtils;
    import org.apache.log4j.Logger;
    import java.io.InputStream;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Properties;
    
    
    /**
     * Created by yang on 2017/1/5.
     * 静态配置
     */
    public class Constants {
    
        private static Logger logger = Logger.getLogger(Constants.class);
        private static Map<String, String> configMap = null;
    
    
        static {
            Properties pt = new Properties();
            InputStream ist = null;
            try {
                ist = Constants.class.getClassLoader().getResourceAsStream("datasource-config.properties");
                pt.load(ist);
                configMap = new HashMap<String, String>(pt.keySet().size());
                logger.info("Constants list:");
                for (Object keyObj : pt.keySet()) {
                    String key = keyObj.toString();
                    Object objs = pt.get(key);
                    logger.info(key + ":" + objs);
                    configMap.put(key.trim(), objs.toString());
                }
            } catch (Exception e) {
                logger.error(e.getCause());
            } finally {
                try {
                    if (null != ist) {
                        ist.close();
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    
        private static String getSimpleValue(String key, String defaultValue) {
            String value = configMap.get(key);
            if (value == null || value.trim().length() == 0) {
                value = defaultValue;
            }
            assert StringUtils.isNotBlank(value);
            return value;
        }
    
    
        private static String getSimpleValue(String key) {
            return configMap.get(key).toString();
        }
    
    
        public static String getEsTopicHost() {
            return getSimpleValue("dataSource.es.topic.host");
        }
    
    
        public static String getEsUserLogHost() {
            return getSimpleValue("dataSource.es.userlog.host");
        }
    
    
        public static int getShardedPoolMaxTotal() {
            return Integer.valueOf(getSimpleValue("redis.shardedpool.maxtotal", "20")).intValue();
        }
    
        public static long getShardedPoolMaxWaitMillis() {
            return Long.valueOf(getSimpleValue("redis.shardedpool.maxwaitmillis", "1000")).longValue();
        }
    
    
        //redis
        public static String getRedisHost() {
            return getSimpleValue("redis.host");
        }
    
        public static String getRedisPort() {
            return getSimpleValue("redis.port", "6379");
        }
    
    
    }
  • 相关阅读:
    mysql 判断时间 语法
    SVN权限配置
    redis 安装 配置 及启动
    SVN搭建(linux 7)
    Maven 逆向工程
    git 设置只输入一次用户名和密码
    java环境变量配置(win7)
    Navicat Premium 12 激活
    linux 常用命令
    MVC的验证(模型注解和非侵入式脚本的结合使用)
  • 原文地址:https://www.cnblogs.com/0xcafedaddy/p/6520505.html
Copyright © 2011-2022 走看看