java 解析json对象转化错误解决方法

本文介绍了解决使用JSONObject.toBean()方法将JSON字符串转换为包含List或Map等复杂类型的自定义Java对象时出现的类型转换错误。通过定义一个包含特定类类型的Map并在toBean()方法中使用它,可以成功地进行类型转换。
今天遇到个错误
因为JSONObject.toBean()把JSON字符串转换为一个自己定义的类,当其中属性有类似List , Map ,ArrayList的时候,麻烦就来了
错误:MorphDynaBean cannot be cast to com.softright.bean.TestBean

解决方法:
在JSONObject.toBean的时候
如果转换的类中有集合,可以先定义Map<String, Class> classMap = new HashMap<String, Class>();
在classMap中put你要转换的类中的集合名,像:classMap.put("data", StoDataInfo.class);
当然也可以put一个集合类("data",Map.class)
然后在toBean()的时候把参数加上, 像:ShenTongInfo stInfo=(ShenTongInfo) JSONObject.toBean(o, ShenTongInfo.class, classMap);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值