将JSON转换为POJO retrofit2

问题描述 投票:-2回答:2

我如何描述POJO以获得这样的答案,以便改造能够理解它?响应以这种形式出现。我剪了它,以便看到JSON的结构。我转换为POJO的嵌套对象。我想学习如何转换主要对象?

[
    [
    "all_areas",
    {
      "6": {
        "id": "6",
        "parent_id": "0",
        "left_key": "1",
        "right_key": "6594",
        "level": "1",
        "title": "Вся Россия",
        "alias": "vsya_rossiya",
        "sort": "1",        
        "navigatorListItems": []
      },
      "7": {
        "id": "7",
        "parent_id": "6",
        "left_key": "2",
        "right_key": "31",
        "level": "2",
        "title": "Адыгея респ.",
        "alias": "adygeya_resp",
        "sort": "1",       
        "navigatorListItems": []
      }
    }
  ],
  [
    "current_rubrics",
    [
      {
        "id": "7",
        "parent_id": "6",
        "left_key": "2",
        "right_key": "19",
        "level": "2",
        "title": "Недвижимость",
        "alias": "nedvizhimost",
        "sort": "1"
      },
      {
        "id": "8",
        "parent_id": "6",
        "left_key": "20",
        "right_key": "47",
        "level": "2",
        "title": "Транспорт",
        "alias": "transport",
        "sort": "2"
      }
    ]
  ]
  ]
java retrofit pojo
2个回答
0
投票

这将是您的主要模型类:

public class Testing
  {
   private 7 7;

   private 6 6;

public 7 get7 ()
{
    return 7;
}

public void set7 (7 7)
{
    this.7 = 7;
}

public 6 get6 ()
{
    return 6;
}

public void set6 (6 6)
{
    this.6 = 6;
}

@Override
public String toString()
{
    return "ClassPojo [7 = "+7+", 6 = "+6+"]";
}
 }

然后会有两个子类(7.java和6.java):

7.Java

 public class 7
 {
private String[] navigatorListItems;

private String id;

private String left_key;

private String title;

private String sort;

private String level;

private String alias;

private String right_key;

private String parent_id;

public String[] getNavigatorListItems ()
{
    return navigatorListItems;
}

public void setNavigatorListItems (String[] navigatorListItems)
{
    this.navigatorListItems = navigatorListItems;
}

public String getId ()
{
    return id;
}

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

public String getLeft_key ()
{
    return left_key;
}

public void setLeft_key (String left_key)
{
    this.left_key = left_key;
}

public String getTitle ()
{
    return title;
}

public void setTitle (String title)
{
    this.title = title;
}

public String getSort ()
{
    return sort;
}

public void setSort (String sort)
{
    this.sort = sort;
}

public String getLevel ()
{
    return level;
}

public void setLevel (String level)
{
    this.level = level;
}

public String getAlias ()
{
    return alias;
}

public void setAlias (String alias)
{
    this.alias = alias;
}

public String getRight_key ()
{
    return right_key;
}

public void setRight_key (String right_key)
{
    this.right_key = right_key;
}

public String getParent_id ()
{
    return parent_id;
}

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

@Override
public String toString()
{
    return "ClassPojo [navigatorListItems = "+navigatorListItems+", id = "+id+", left_key = "+left_key+", title = "+title+", sort = "+sort+", level = "+level+", alias = "+alias+", right_key = "+right_key+", parent_id = "+parent_id+"]";
}
  }

6.Java

public class 6
{
private String[] navigatorListItems;

private String id;

private String left_key;

private String title;

private String sort;

private String level;

private String alias;

private String right_key;

private String parent_id;

public String[] getNavigatorListItems ()
{
    return navigatorListItems;
}

public void setNavigatorListItems (String[] navigatorListItems)
{
    this.navigatorListItems = navigatorListItems;
}

public String getId ()
{
    return id;
}

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

public String getLeft_key ()
{
    return left_key;
}

public void setLeft_key (String left_key)
{
    this.left_key = left_key;
}

public String getTitle ()
{
    return title;
}

public void setTitle (String title)
{
    this.title = title;
}

public String getSort ()
{
    return sort;
}

public void setSort (String sort)
{
    this.sort = sort;
}

public String getLevel ()
{
    return level;
}

public void setLevel (String level)
{
    this.level = level;
}

public String getAlias ()
{
    return alias;
}

public void setAlias (String alias)
{
    this.alias = alias;
}

public String getRight_key ()
{
    return right_key;
}

public void setRight_key (String right_key)
{
    this.right_key = right_key;
}

public String getParent_id ()
{
    return parent_id;
}

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

@Override
public String toString()
{
    return "ClassPojo [navigatorListItems = "+navigatorListItems+", id = "+id+", left_key = "+left_key+", title = "+title+", sort = "+sort+", level = "+level+", alias = "+alias+", right_key = "+right_key+", parent_id = "+parent_id+"]";
}
 }

0
投票

我想这就是Json的样子

{
"all_areas": [{
"6": {
  "id": "6",
  "parent_id": "0",
  "left_key": "1",
  "right_key": "6594",
  "level": "1",
  "title": "Вся Россия",
  "alias": "vsya_rossiya",
  "sort": "1",
  "navigatorListItems": []
}
},

{
"7": {
  "id": "7",
  "parent_id": "6",
  "left_key": "2",
  "right_key": "31",
  "level": "2",
  "title": "Адыгея респ.",
  "alias": "adygeya_resp",
  "sort": "1",
  "navigatorListItems": []
}
}
],
"current_rubrics": [{
  "id": "7",
  "parent_id": "6",
  "left_key": "2",
  "right_key": "19",
  "level": "2",
  "title": "Недвижимость",
  "alias": "nedvizhimost",
  "sort": "1"
},
{
  "id": "8",
  "parent_id": "6",
  "left_key": "20",
  "right_key": "47",
  "level": "2",
  "title": "Транспорт",
  "alias": "transport",
  "sort": "2"
 }
 ]
}

复制此内容并使用网站http://www.jsonschema2pojo.org或任何其他为您进行转换的网站将其转换为pojo

© www.soinside.com 2019 - 2024. All rights reserved.