首页 > 解决方案 > 反序列化带有子对象的对象

问题描述

我有一个使用带有孩子的对象的 Json 列表

{
 "id":"154",
 "name":"peter",
 "children": [
               {
                "id":"122",
                "name": "mick",
                "children":[]
               },
               {
                "id":"123",
                "name": "mick",
                "children":[]
               }
            ]
}

这是我的对象的类:

public class person{
                    private String id;
                    private String name;
                    private List<person> children;

//getters and setters
}

当我尝试反序列化此对象时,出现以下错误

无法从 START_ARRAY 令牌中反序列化人员实例

我应该怎么办 ?

标签: javajsonjackson

解决方案


JSON 包含一组人员。你的班级是一个person.

@Naveed Yadav建议的那样更改 JSON 或将类更改为

public class Person{
             private String id;
             private String name;
             private Person[] children;

//getters and setters
}

(顺便说一句,Java 中的类名应该是大写的)


推荐阅读