仅反序列化JSON对象数组(Java)的某些字段

时间:2014-11-28 15:40:49

标签: java json gson deserialization

鉴于我从网站获得的这个JSON响应:

{
  "Items":
   [
    { "Name":"Apple", "Price":12.3, "Quantity":30 },
    { "Name":"Grape", "Price":3.21, "Quantity":60 }
   ],
   "Date":"21/11/2010"
}

我如何反序列化这个JSON,将它拆分为名为Fruits的数组,只包含名称和数量?我不关心日期字段或价格等其他字段。

我的课应该是这样的:

class Fruit{
   String name;
   String quantity;
}

这是阵列:

Fruit myfruits[] = new Fruit [this number depends on  JSON response I get]

我怎么能这样做? 我试图给出最好的解释,如果还不清楚的话,随便问一下。

P.S:顺便说一句,真正的JSON响应有更多字段

1 个答案:

答案 0 :(得分:0)

你需要忽略你不习惯的字段。

每个序列化框架都以不同的方式完成。

在某些情况下,您可以为POJO添加注释,或使用序列化程序实例设置

使用Gson

Gson ignore json field and deserialize

使用Jackson

Ignoring new fields on JSON objects using Jackson