我有一个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);
答案 0 :(得分:6)
截至Jackson 2.0,JSONViews are available for deserialization too。
答案 1 :(得分:3)
在Jackson中,JSON Views仅用于序列化。
要将JSON数据反序列化为有时是字符串,有时候对象需要custom deserialization processing。