Java读取yml配置⽂件到map中
public class App {
//存储配置属性的Map集合
public static Map<String, Object> conf =new HashMap<String, Object>();
public static void main(String[] args)throws IOException {冲云霄
//从classpath下获取配置⽂件路径
URL url = Resource("/l");
Yaml yaml =new Yaml();
//通过yaml对象将配置⽂件的输⼊流转换成map原始map对象
Map map = yaml.loadAs(new Path()), Map.class);
cf战队宣言大全//递归map对象将配置加载到conf对象中
loadRecursion(map,"");
System.out.("mysql.database1.table1"));
}
//递归解析map对象
public static void loadRecursion(Map<String, Object> map, String key){
map.forEach((k,v)->{
if(isParent(v)){
Map<String, Object> nextValue =(Map<String, Object>) v;北戴河旅游景点介绍
loadRecursion(nextValue,(("".equals(key)?"": key +".")+ k));
}else{
conf.put(key+"."+k,v);
关于爱文章}
});
}
//判断是否还有⼦节点
绿光森林电视剧public static boolean isParent(Object o){
小满是什么意思if(!(o instanceof String || o instanceof Character || o instanceof Byte)){
try{
Number n =(Number) o;
}catch(Exception e){
return true;
}
}
return false;
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论