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");
} }
Java加载Properties配置文件工具类的更多相关文章
- 加载Properties文件工具类:LoadConfig
import javax.servlet.http.HttpServletRequest; import javax.ws.rs.GET; import javax.ws.rs.Path; impor ...
- Java读取properties配置文件工具类
1. PropertyUtils.java package javax.utils; import java.io.InputStream; import java.util.Properties ...
- JAVA加载Properties配置资源文件
JAVA加载Properties配置资源文件 制作人:全心全意 配置文件(资源文件):以properties作为拓展名的文件 Java代码是如何加载properties文件的? 必须使用Propert ...
- android html 图片处理类--加载富文本工具类
在android开发中,一些资讯类页面,里面有html标签和图片,html 标签一般通过Html.fromHtml方法,即可以解决,但是如果html 有图片标签,那么,Html.fromHtml 好像 ...
- java加载properties文件的六中基本方式实现
java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过impo ...
- java加载properties文件的六种方法总结
java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类:一种是通过import java. ...
- 加载Properties配置文件
/** * 加载Properties配置文件 * * @author ZhangHaiNing * @param file 要读取的文件 * @return */ public static Prop ...
- 使用Spring加载properties配置文件.md
背景 类似于datasource.properties之类的配置文件,最初通过Java的Properties类进行处理.这种方式有许多弊端,如每次都需要读取配置文件:若将Properties作为成员变 ...
- Java之JDBC 通过加载properties配置文件连接数据库
通常情况下,我们通过JDBC连接数据库的时候,不会将数据库相关配置写死,因为到时候数据库一有改动,就要重新打包部署到服务器或者替换相关的.class文件,这样非常不灵活.因此,咱们一般会通过读取配置文 ...
随机推荐
- Log4j官方文档翻译(三、配置)
之前的章节介绍了log4j的核心组件,本章将会通过配置文件介绍一下核心组建的配置. 主要在配置文件中配置log4j的日志级别,定义appender.layout等. log4j.properties是 ...
- cmake导出的visual studio工程带头文件
file(GLOB_RECURSE CURRENT_HEADERS *.h *.hpp) 分组显示 source_group("Include" FILES ${CURRENT_H ...
- aplusb 数论
题目描述 SillyHook 要给小朋友出题了,他想,对于初学者,第一题肯定是a+b啊, 但当他出完数据后神奇地发现.in 不见了,只留下了一些.out,他想还原.in,但 情况实在太多了,于是他想要 ...
- python数据结构元组与集合
元组 1.()来定义 2.有序,同列表 3.元组一旦创建,不能被修改 注:元组的标识是逗号,不是括号 元组的定义 a = (1,2) type(a) <class 'tuple'> 元组的 ...
- MFC 禁用输入法
#include <Imm.h> HIMC m_hImc; // 全局或者成员变量 // Function for Disabling IME void CMyDialog::Disabl ...
- 向量内积(bzoj 3243)
Description 两个d 维向量A=[a1,a2,...,ad]与B=[b1,b2,...,bd]的内积为其相对应维度的权值的乘积和,即: 现有 n 个d 维向量x1,...,xn ,小喵喵想知 ...
- JavaScript真的要一统江湖了
ttp://www.newsmth.net/nForum/#!article/Python/125347?p=4 标 题: JavaScript真的要一统江湖了 发信站: 水木社区 (Fri Sep ...
- .net开发工具集合
原文发布时间为:2010-10-24 -- 来源于本人的百度文章 [由搬家工具导入] 原文出处:.NET Tools:Ten Must-Have Tools Every Developer Shoul ...
- FCKeditor2.6.4控件及其使用范例
原文发布时间为:2009-06-14 -- 来源于本人的百度文章 [由搬家工具导入] 已经精简了,很小,不多说了,我的源代码去下载看。 web.config 看看。。。还有bin里面的dll就是控件, ...
- 网络上面好用的webserice方法【公开】
原文发布时间为:2009-07-27 -- 来源于本人的百度文章 [由搬家工具导入] 本帖转自 http://www.webxml.com.cn/zh_cn/web_services.aspx?off ...