工作终于到了一个问题
本来配置是从本地拿,现需要改成远程拿,这些配置放在yml文件里面
yml文件映射到了一个嵌套LinkedHashMap身上.
是这样一个对象
LinkedHashMap<String,LinkedHashMap<String,LinkedHashMap<String,List<TxnType>>>> config
通过key值拿到第一层,得到了一个List, 然后转换成流去map成TxnType时报转换错误。
说LinkedHashMap 无法强转成 TxnType类型,后面上网搜了一下,找到了一个解决办法:
参考这个方法
改之后的code逻辑:
1.先用List接住 第一层LinkedHashMap 集合,
2.定义了 ObjectMapper mapper = new ObjectMapper();
3.不能用stream流进行map遍历,用for i 循环遍历,
TxnType txnType = mapper.convertValue(list.get(i),TxnType.class);
后面几层的HashMap都可以正常访问了,成功解决问题,✌