Smail_
2016-10-20 18:15:11
Spring RestTemplate java.util.LinkedHashMap cannot be cast to .... 异常的解决方案
这是Spring RestTemplate getForObject的一个坑。
嗯——,按理说我UI层用List<Owner>去接没错啊。
然而错了.....
它给我返回的是List<LinkedHashMap>,变种了......
于是我这么去接:
尼玛,总觉得不伦不类......
老子强迫症又犯了,你给我Map,不行,我不要,我就要Bean......
google一下:
All Jackson knows is that you want a List, but doesn't have any restriction on the type. By default Jackson deserializes a JSON object into a LinkedHashMap, so that's why you are getting the ClassCastException.
If your returned JSON is an array, one way to get it is to use an array
MyModelClass[] myModelClasses = restTemplate.postForObject(url,mvm, MyModelClass[].class);
You can always add the elements from that array to a List.
原来如此。
改下代码:
评论
最近浏览
chao20
2022年3月4日
暂无贡献等级
112233123 LV1
2022年1月20日
19120637281
2021年12月20日
暂无贡献等级
wjy_cloud LV1
2021年7月23日
comment LV1
2021年7月19日
11703060125 LV8
2021年6月23日
Rommel LV27
2021年5月24日
1036608941 LV1
2021年3月22日
csy1209457788 LV3
2021年3月12日
duanlobo LV1
2020年12月18日