在Java中的Jackson JSON反序列化过程中忽略缺少的属性

在这个例子中

class Person {

String name;

int age;

}

如果JSON对象缺少属性“ age”,

{

name : John

}

Person person = objectMapper.readValue(jsonFileReader, Person.class);

有人JsonMappingException说它不能反序列化。在反序列化期间是否有 注释 可忽略丢失的字段?

谢谢

回答:

我想你想要的是

@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)

public class Person {

...

}

这就是Jackson 1.x的方式。我认为2.x中有一种新方法。就像是

@JsonInclude(Include.NON_NULL)

public class Person {

...

}

这些将告诉Jackson仅序列化不为null的值,并且在反序列化缺少的值时不会抱怨。我认为它将只是将其设置为Java默认值。

以上是 在Java中的Jackson JSON反序列化过程中忽略缺少的属性 的全部内容, 来源链接: utcz.com/qa/410002.html

回到顶部