Jackson Json查看反序列化

时间:2011-10-21 16:24:40

标签: java json jackson

我有一个Json对象,根据请求返回具有不同用途的相同属性(生成的Json不受我的控制)。我提出具体要求时,我只关心财产价值。有没有办法使用视图进行反序列化或其他有条件地传播pojo的东西?

实施例: JSON

"boo":
{
  "a": "foo"
}

"boo":
{
  "a": { "x": 3 }
}

爪哇

public class Views {
  public static class WhatIWant {}
  public static class SomeOtherThings {}
}

public class Result {
  @JsonView(View.WhatIWant)
  public string a;
}

Result r = mapper.getDeserializationConfig()
                 .setDeserializationView(Views.WhatIWant.class)??
                 .readValue(node, Result.class);

2 个答案:

答案 0 :(得分:6)

答案 1 :(得分:3)

在Jackson中,JSON Views仅用于序列化。

要将JSON数据反序列化为有时是字符串,有时候对象需要custom deserialization processing