Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
882 views
in Technique[技术] by (71.8m points)

android - How to make POJO class for JSON

How should I make POJO class? Object may have unlimited array.

This is my JSON,

{
    "result": {
        "0": [{
            "id": "51",
            "first_name": "ra",
            "last_name": "d",
            "email": "[email protected]",
            "password": "1234",
            "mobile_no": "8252536365",
            "parent_id": "50",
            "position": "0",
            "type": "User",
            "created_at": "1476447434",
            "updated_at": "1476447434",
            "deleted_at": null,
            "stage": 0,
            "total_childs": 0
        }, {
            "id": "52",
            "first_name": "Ashish",
            "last_name": "Chauhan",
            "email": "[email protected]",
            "password": "12345",
            "mobile_no": "89889989832",
            "parent_id": "8",
            "position": "1",
            "type": "admin",
            "created_at": "1476702542",
            "updated_at": "1476702542",
            "deleted_at": null,
            "stage": 0,
            "total_childs": 0
        }],
        "2": [{
            "id": "2",
            "first_name": "Ashish",
            "last_name": "Chauhan",
            "email": "[email protected]",
            "password": "12345",
            "mobile_no": "89889989832",
            "parent_id": "1",
            "position": "0",
            "type": "admin",
            "created_at": "1475674631",
            "updated_at": "1475674631",
            "deleted_at": null,
            "stage": 2,
            "total_childs": 2
        }],
        "1": [{
            "id": "7",
            "first_name": "Shiva",
            "last_name": "Singh",
            "email": "[email protected]",
            "password": "12345",
            "mobile_no": "89889989832",
            "parent_id": "2",
            "position": "0",
            "type": "user",
            "created_at": "1475674808",
            "updated_at": "1475674808",
            "deleted_at": null,
            "stage": 1,
            "total_childs": 2
        }, {
            "id": "8",
            "first_name": "Atul",
            "last_name": "Kumar",
            "email": "[email protected]",
            "password": "12345",
            "mobile_no": "89889989832",
            "parent_id": "2",
            "position": "1",
            "type": "user",
            "created_at": "1475674835",
            "updated_at": "1475674835",
            "deleted_at": null,
            "stage": 1,
            "total_childs": 2
        }]
    }
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

If you are trying to form json response schema for retrofit:

public class MyPojo            
{
    private String position;

    private null deleted_at;

    private String type;

    private String stage;

    private String password;

    private String id;

    private String first_name;

    private String total_childs;

    private String updated_at;

    private String email;

    private String last_name;

    private String created_at;

    private String mobile_no;

    private String parent_id;

    public String getPosition ()
    {
        return position;
    }

    public void setPosition (String position)
    {
        this.position = position;
    }

    public null getDeleted_at ()
    {
        return deleted_at;
    }

    public void setDeleted_at (null deleted_at)
    {
        this.deleted_at = deleted_at;
    }

    public String getType ()
    {
        return type;
    }

    public void setType (String type)
    {
        this.type = type;
    }

    public String getStage ()
    {
        return stage;
    }

    public void setStage (String stage)
    {
        this.stage = stage;
    }

    public String getPassword ()
    {
        return password;
    }

    public void setPassword (String password)
    {
        this.password = password;
    }

    public String getId ()
    {
        return id;
    }

    public void setId (String id)
    {
        this.id = id;
    }

    public String getFirst_name ()
    {
        return first_name;
    }

    public void setFirst_name (String first_name)
    {
        this.first_name = first_name;
    }

    public String getTotal_childs ()
    {
        return total_childs;
    }

    public void setTotal_childs (String total_childs)
    {
        this.total_childs = total_childs;
    }

    public String getUpdated_at ()
    {
        return updated_at;
    }

    public void setUpdated_at (String updated_at)
    {
        this.updated_at = updated_at;
    }

    public String getEmail ()
    {
        return email;
    }

    public void setEmail (String email)
    {
        this.email = email;
    }

    public String getLast_name ()
    {
        return last_name;
    }

    public void setLast_name (String last_name)
    {
        this.last_name = last_name;
    }

    public String getCreated_at ()
    {
        return created_at;
    }

    public void setCreated_at (String created_at)
    {
        this.created_at = created_at;
    }

    public String getMobile_no ()
    {
        return mobile_no;
    }

    public void setMobile_no (String mobile_no)
    {
        this.mobile_no = mobile_no;
    }

    public String getParent_id ()
    {
        return parent_id;
    }

    public void setParent_id (String parent_id)
    {
        this.parent_id = parent_id;
    }

}

Then in your api call:

Call<ResultResponse> xyz=interfacexyz.getResults(new Callback(...))

And you can define resultResponse as:

ResultRespone.java:

public class ResultRespone
{
    @SerializedName("results")
    List<Map<string,MyPojo>>  resultList;
    // define getters and setters
    ....
    ....
}

then you can access individual results as:

ResultResponse=response.body();
ResultResponse.get(0);//to get element at 0th position

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

57.0k users

...