@ResquestBody的HashMap转List时错误java.util.LinkedHashMap cannot be cast to com.XXX.XXX
@RequsetBody Map<String, Object> map // 这里Object假设为集合
List<Entity> list = (List<Entity>) (key);
for(Entity e : list){ //这里会出错…………
}
这样遍历list时会发生错误,原因是(key)得到的Object(Object为list或者其它集合)里面的元素并没有转成Entity类型。
解决方案:
用把(key)拿出来的Object转成JSONArray,然后把JSONArray转成Iterator,通过迭代用getString( )方法获取Object中元素的值;
例:
@RequsetBody Map<String, Object> map // 这里requestBody假设为{"test": "123","testList": [{"name": "me","age": "20"},{"name": "you","age": "22"}]};
JSONArray list = JSONArray.("testList"));
Iterator<Object> it = list.iterator();
while (it.hasNext()) {JSONObject ob = (JSONObject) it.next();String name = ob.getString("name");System.out.println(name);
}
本文发布于:2024-02-05 01:17:51,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170720751861729.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |