public static Properties properties;
static {
properties = new Properties();
//得到classpath路径
URL url = PropertiesUtil.class.getClassLoader().getResource("");
File file = new File(url.getFile());
if (file.isDirectory()) {
File[] files = file.listFiles();
for (File f : files) {
if(f.isFile()&&f.getName().endsWith("properties")) {//遍历出所有properties文件
try {
properties.load(PropertiesUtil.class.getClassLoader().getResourceAsStream(f.getName()));
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
由于配置文件加载是一个耗时操作,开发时不应该在使用配置文件的时候实时读取配置文件,应该编写一个工具类,该代码放在工具类的静态代码块中,初始化时一次加载所有的配置文件。
用如下方法读取
public static String getValue(String key)
{
return properties.getProperty(key);
}