概述

由来

Setting

众所周知,Java中广泛应用的配置文件Properties存在一个特别大的诟病:不支持中文。每次使用时,如果想存放中文字符,必须借助IDE相关插件才能转为Unicode符号,而这种反人类的符号在命令行下根本没法看(想想部署在服务器上后修改配置文件是一件多么痛苦的事情)

于是,在很多框架中开始渐渐抛弃Properties文件而转向XML配置文件(例如Hibernate和Spring早期版本)。但是XML罗嗦的配置方式实在无法忍受。于是,Setting诞生。

Props

Properties的第二个问题是读取非常不方便,需要我们自己写长长的代码进行load操作:

properties = new Properties();
try {
	Class clazz = Demo1.class;
	InputStream inputestream = clazz.getResourceAsStream("db.properties");
	properties.load( inputestream);
}catch (IOException e) {
	//ignore
}

而Props则大大简化为:

Props props = new Props("db.properties");

考虑到Properties使用依旧广泛,因此封装了Props类以应对兼容性。