使用jackson将json数据映射到java中的两个不同实体

时间:2014-10-18 06:41:37

标签: java json jackson

我在java中使用jackson库。

我有以下JSON结构。

{
  "Device": "1234",
  "By": "Manual",
  "Flow": 524,
  "Timezone": "Asia/Calcutta",
  "Timestamp": "29/09/14 15:50:00"
}

我有两个实体DataEntityTimeEntity

class DataEntity
{
 String Devive;
 String By;
 int Flow;
}

class TimeEntity
{
  String Timezone;
  String Timetamp;
}

如何将json字符串映射到不同的实体,即DataEntity和TimeEntity? 我使用的是ObjectMapper Class。

1 个答案:

答案 0 :(得分:1)

您必须使用@JsonIgnoreProperties(ignoreUnknown = true)注释您的类。

之后:

ObjectMapper mapper = new ObjectMapper();
DataEntity dataEntity = mapper.readValue(json, DataEntity.class);
TimeEntity timeEntity = mapper.readValue(json, TimeEntity.class);