Json字符串:
[ {"userId":"","dbUser":"18","name":"18","deptCode":"","identity":"1","createDate":"","telephone":"","memo":""}, {"userId":"","dbUser":"19","name":"19","deptCode":"","identity":"1","createDate":"","telephone":"","memo":""} ]
json反序列化为实体代码:
json = json.substring(1, json.length()-1); JSONObject jsonObject = JSONObject.fromObject(json); user = (User)JSONObject.toBean(jsonObject, User.class);
问题一:需要用json.substring(1, json.length()-1) 去掉json字符串头尾的符号 [ ,否则
JSONObject jsonObject = JSONObject.fromObject(json); 会报错:需要以 { 开头,这是正常的么?
问题二:用上面的方法反序列化生成的User实体只有dbUser=18这个成员,而第2个dbUser=19这个成员被截了,JSONObject jsonObject = JSONObject.fromObject(json);中jsonObject就被截断了.
请问该如何处理能够得到包含多个成员的User实体集合?
谢谢!
对于数组,你应该用JsonArray对象吧。JsonObject只能装一个对象。所以就接收不到dbUser=19了。
要反序列数组呀。。。。。
怎么老有人这样搞?你凭什么觉得他不能直接反序列化成数组?