记录一下自己在写代码时的一些工具类,以后开发可以反复利用
public class PropertyConfig
{
// 默认配置的是UTF-8
public static String encoding_UTF8 = "UTF-8";
public static final String FILE_NAME = "config.properties";
public static PropertyConfig getPropertyConfig(){
if(config == null){
config = new PropertyConfig();
}
return config;
}
/**
* 从classpath路径下加载配置参数
*/
public void loadPropertiesFromSrc() {
InputStream in = null;
try {
// Properties pro = null;
logger.info("从classpath: " + PropertyConfig.class.getClassLoader().getResource("").getPath() + " 获取属性文件"
+ FILE_NAME);
in = PropertyConfig.class.getClassLoader().getResourceAsStream(FILE_NAME);
if (null != in) {
BufferedReader bf = new BufferedReader(new InputStreamReader(in, "utf-8"));
properties = new Properties();
try {
properties.load(bf);
} catch (IOException e) {
throw e;
}
} else {
logger.error(FILE_NAME + "属性文件未能在classpath指定的目录下 "
+ PropertyConfig.class.getClassLoader().getResource("").getPath() + " 找到!");
return;
}
loadProperties(properties);
} catch (IOException e) {
logger.error(e.getMessage(), e);
} finally {
if (null != in) {
try {
in.close();
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
}
}
}
/**
* 根据传入的对象设置配置参数
*
* @param pro
*/
public void loadProperties(Properties pro) {
logger.info("开始从属性文件中加载配置项");
String value = pro.getProperty(“配置ID”);
if (!StringUtils.isEmpty(value))
{
//你需要获取的值
}
}
}