【问题标题】:how to get categories and subcategories with model classes from json如何从 json 中获取具有模型类的类别和子类别
【发布时间】:2016-04-24 17:27:15
【问题描述】:

我已经为我从下面的 json 获取的类别创建了一个模型类

    {
"currency": {
    "INR": "1.000000000000",
    "USD": "0.015400000000"
},
"category": [{
    "category_id": 3,
    "parent_id": 2,
    "name": "Gifts & Smiles",
    "is_active": 1,
    "position": 1,
    "level": 2,
    "children": []
},
{
    "category_id": 4,
    "parent_id": 2,
    "name": "Send To",
    "is_active": 1,
    "position": 2,
    "level": 2,
    "children": [{
        "category_id": 22,
        "parent_id": 4,
        "name": "India",
        "is_active": 1,
        "position": 1,
        "level": 3,
        "children": [{
            "category_id": 8,
            "parent_id": 22,
            "name": "Agra",
            "is_active": 1,
            "position": 1,
            "level": 4,
            "children": []
        },
        {
            "category_id": 6,
            "parent_id": 22,
            "name": "Ahmedabad",
            "is_active": 1,
            "position": 2,
            "level": 4,
            "children": []
        },
        {
            "category_id": 9,
            "parent_id": 22,
            "name": "Akola",
            "is_active": 1,
            "position": 3,
            "level": 4,
            "children": []
        },
        {
            "category_id": 10,
            "parent_id": 22,
            "name": "Allahabad",
            "is_active": 1,
            "position": 4,
            "level": 4,
            "children": []
        },
        {
            "category_id": 11,
            "parent_id": 22,
            "name": "Aligarh",
            "is_active": 1,
            "position": 5,
            "level": 4,
            "children": []
        },
        {
            "category_id": 12,
            "parent_id": 22,
            "name": "Ambala",
            "is_active": 1,
            "position": 6,
            "level": 4,
            "children": []
        },
        {
            "category_id": 13,
            "parent_id": 22,
            "name": "Amravati",
            "is_active": 1,
            "position": 7,
            "level": 4,
            "children": []
        },
        {
            "category_id": 15,
            "parent_id": 22,
            "name": "Amritsar",
            "is_active": 1,
            "position": 8,
            "level": 4,
            "children": []
        },
        {
            "category_id": 14,
            "parent_id": 22,
            "name": "Aurangabad",
            "is_active": 1,
            "position": 9,
            "level": 4,
            "children": []
        },
        {
            "category_id": 7,
            "parent_id": 22,
            "name": "Bangalore",
            "is_active": 1,
            "position": 10,
            "level": 4,
            "children": []
        },
        {
            "category_id": 16,
            "parent_id": 22,
            "name": "Baroda",
            "is_active": 1,
            "position": 11,
            "level": 4,
            "children": []
        },
        {
            "category_id": 17,
            "parent_id": 22,
            "name": "Bhopal",
            "is_active": 1,
            "position": 12,
            "level": 4,
            "children": []
        },
        {
            "category_id": 18,
            "parent_id": 22,
            "name": "Chandigarh",
            "is_active": 1,
            "position": 13,
            "level": 4,
            "children": []
        },
        {
            "category_id": 19,
            "parent_id": 22,
            "name": "Chennai",
            "is_active": 1,
            "position": 14,
            "level": 4,
            "children": []
        },
        {
            "category_id": 21,
            "parent_id": 22,
            "name": "Delhi",
            "is_active": 1,
            "position": 15,
            "level": 4,
            "children": []
        }]
    },
    {
        "category_id": 23,
        "parent_id": 4,
        "name": "Abroad",
        "is_active": 1,
        "position": 2,
        "level": 3,
        "children": []
    }]
},
{
    "category_id": 20,
    "parent_id": 2,
    "name": "Gift Cards",
    "is_active": 1,
    "position": 3,
    "level": 2,
    "children": []
}]}

这是我从 json 中获取类别的模型类

public class ModelCategories {

public static ArrayList<String> id = new ArrayList<String>();
public static ArrayList<String> name = new ArrayList<String>();
}

我知道如何解析 json,但我的问题是如何在模型类中存储子类别我是这种场景的新手。

所以请帮帮我……

【问题讨论】:

  • 请多解释how can i store sub-categories in model class
  • 你使用什么 json 解析器?
  • 我非常了解解析技术,但是如何根据模型类中的类别存储子类别。我使用数组列表来存储类别。
  • 你应该试试这个,jsonschema2pojo.org,它会为你创建 POJO。您只需要做出适当的选择。

标签: java android json


【解决方案1】:

我不知道您为什么要创建像这样的 ModelCategories 模型。 如果我必须为此工作,我将创建一个名为 Category 的模型:

  public class Category {
       String id;
       String name;
       int position;
       List<Category> subCategories;
  }

【讨论】:

  • 那么我应该如何存储多个类别,我从 json 中获取的那些。
  • 维护您班级中的类别列表:List categories;
  • 好的,但国家/地区多了一层。请在这种情况下帮助我。
  • 请指定国家字段的位置。我在你的 JSON 中找不到它。
  • 请把我的json复制粘贴到这里你会明白的jsoneditoronline.org
猜你喜欢
  • 2012-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-17
  • 2014-07-09
  • 2015-10-09
  • 2021-12-21
  • 1970-01-01
相关资源
最近更新 更多