使用GSON将通用JSON对象映射到Map接口

时间:2014-05-28 09:40:07

标签: java android json gson

给出以下JSON对象

{
   "id": 5,
   "data: { ... }
}

是否可以将此映射到以下POJO?

class MyEntity {
    int id;
    Map<String, Object> data;
}

因为我想让数据对象保持开放状态。这甚至是可能的,或者更好的方法是什么?我在Android上这样做。

1 个答案:

答案 0 :(得分:0)

我对Android应用程序一无所知,但您可以轻松地使用Gson库实现它。

示例代码:

String json = "{\"id\": 5,\"data\": {}}";
MyEntity myEntity = new Gson().fromJson(json, MyEntity.class);

String prettyJsonString = new GsonBuilder().setPrettyPrinting().create().toJson(myEntity);
System.out.println(prettyJsonString);

输出:

{
    "id": 5,
    "data": {}
}