• 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");
        }
    
    
    }
  • 相关阅读:
    Pandas中dataframe以及spark中rdd使用groupByKey进行合并
    Apriori算法Python实现
    安装Cloudera CDH
    HDFS常用命令
    vuex modules 命名空间
    sessionStore使用
    indexof使用
    vue 简单购物车实现
    etCapture() 和 ReleaseCapture()的用法
    js组合继承与寄生继承
  • 原文地址:https://www.cnblogs.com/0xcafedaddy/p/6520505.html
Copyright © 2020-2023  润新知