如果该字段的值为空,如何将 Jackson 配置为在序列化期间忽略该字段值。
例如:
public class SomeClass { // what jackson annotation causes jackson to skip over this value if it is null but will // serialize it otherwise private String someValue; }
要使用 Jackson >2.0 禁止序列化具有空值的属性,您可以直接配置ObjectMapper,或使用@JsonInclude注释:
ObjectMapper
@JsonInclude
mapper.setSerializationInclusion(Include.NON_NULL);
要么:
@JsonInclude(Include.NON_NULL) class Foo { String bar; }
或者,您可以@JsonInclude在 getter 中使用,以便在值不为空时显示属性。
我对如何防止 Map 中的空值和 bean 中的空字段通过 Jackson序列化的回答中提供了一个更完整的示例。