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");
} }

Java加载Properties配置文件工具类的更多相关文章

  1. 加载Properties文件工具类:LoadConfig

    import javax.servlet.http.HttpServletRequest; import javax.ws.rs.GET; import javax.ws.rs.Path; impor ...

  2. Java读取properties配置文件工具类

    1.   PropertyUtils.java package javax.utils; import java.io.InputStream; import java.util.Properties ...

  3. JAVA加载Properties配置资源文件

    JAVA加载Properties配置资源文件 制作人:全心全意 配置文件(资源文件):以properties作为拓展名的文件 Java代码是如何加载properties文件的? 必须使用Propert ...

  4. android html 图片处理类--加载富文本工具类

    在android开发中,一些资讯类页面,里面有html标签和图片,html 标签一般通过Html.fromHtml方法,即可以解决,但是如果html 有图片标签,那么,Html.fromHtml 好像 ...

  5. java加载properties文件的六中基本方式实现

    java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过impo ...

  6. java加载properties文件的六种方法总结

    java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类:一种是通过import java. ...

  7. 加载Properties配置文件

    /** * 加载Properties配置文件 * * @author ZhangHaiNing * @param file 要读取的文件 * @return */ public static Prop ...

  8. 使用Spring加载properties配置文件.md

    背景 类似于datasource.properties之类的配置文件,最初通过Java的Properties类进行处理.这种方式有许多弊端,如每次都需要读取配置文件:若将Properties作为成员变 ...

  9. Java之JDBC 通过加载properties配置文件连接数据库

    通常情况下,我们通过JDBC连接数据库的时候,不会将数据库相关配置写死,因为到时候数据库一有改动,就要重新打包部署到服务器或者替换相关的.class文件,这样非常不灵活.因此,咱们一般会通过读取配置文 ...

随机推荐

  1. 计算几何-凸包-toleft test

    toLeftTest toLeftTest是判断一个点是否在有向直线左侧的算法. 当点s位于向量pq左侧时,toLeftTest返回true.当点s位于向量pq右侧时,toLeftTest返回fals ...

  2. 考研心得--一个差劲的ACMer

    考研心得   --ACMer(山东工商学院) 2019年2月20日星期三(正月十六),打开QQ音乐,播放<告别都市>,应同学要求,也是给自己奋斗一年多时间的“考研大业”一个交代,写下这篇考 ...

  3. 【转】 [Unity3D]手机3D游戏开发:场景切换与数据存储(PlayerPrefs 类的介绍与使用)

    http://blog.csdn.net/pleasecallmewhy/article/details/8543181 在Unity中的数据存储和iOS中字典的存储基本相同,是通过关键字实现数据存储 ...

  4. Behavior trees for AI: How they work

    http://www.gamasutra.com/blogs/ChrisSimpson/20140717/221339/Behavior_trees_for_AI_How_they_work.php ...

  5. JVM(8):JVM知识点总览-高级Java工程师面试必备

    http://www.importnew.com/23792.html jvm 总体梳理 jvm体系总体分四大块: 类的加载机制 jvm内存结构 GC算法 垃圾回收 GC分析 命令调优 当然这些知识点 ...

  6. [SDOI2008][luogu2463] Sandy的卡片 [kmp]

    题面 传送门 思路 这道题里面有三个主要问题: 1.由"数值相等"变成了"加上一个整数以后数值相等"(减去等价于加负数) 2.由"最多匹配多少位(从第 ...

  7. 【TJOI2015】弦论 (后缀数组)

    前言: 多好的题啊! 我理论$O(nlog_2n)$的后缀数组还带个常数26,竟然跑的比$O(n)$的后缀自动机还快,全场 Rak 1? Description 为了提高智商,ZJY开始学习弦论.这一 ...

  8. aspx生成静态页面html 例子

    原文发布时间为:2009-07-26 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration ...

  9. 解決eclipse 的alt + / 快捷鍵不好用

    最近公司电脑上的Eclipse没有了自动提示功能,也不是全部不提示,大多数情况下按下“alt+/”键还会产生提示,但是当我在java项目中邪main方法和syso的时候,“alt+/”则会失效,今天在 ...

  10. 归并排序Merge sort(转)

    原理,把原始数组分成若干子数组,对每一个子数组进行排序, 继续把子数组与子数组合并,合并后仍然有序,直到全部合并完,形成有序的数组 举例 无序数组[6 2 4 1 5 9] 先看一下每个步骤下的状态, ...