LinkedHashMap 在stream流中无法强转成Bean对象

工作终于到了一个问题

本来配置是从本地拿,现需要改成远程拿,这些配置放在yml文件里面

yml文件映射到了一个嵌套LinkedHashMap身上.

是这样一个对象

LinkedHashMap<String,LinkedHashMap<String,LinkedHashMap<String,List<TxnType>>>> config

通过key值拿到第一层,得到了一个List, 然后转换成流去map成TxnType时报转换错误。

说LinkedHashMap 无法强转成 TxnType类型,后面上网搜了一下,找到了一个解决办法:

java.util.LinkedHashMap cannot be cast to ...entity(记一次开发中map类型转换为实体类报错的现象以及解决思路)_mischen520的博客-CSDN博客

参考这个方法

改之后的code逻辑:

1.先用List接住 第一层LinkedHashMap 集合,

2.定义了 ObjectMapper mapper = new ObjectMapper();

3.不能用stream流进行map遍历,用for i 循环遍历,

TxnType txnType = mapper.convertValue(list.get(i),TxnType.class);

后面几层的HashMap都可以正常访问了,成功解决问题,✌

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值