如果 Include.NON_NULL 设置为 class 级别,Jackson 序列化 NULL 属性 值

Jackson serialize NULL property value if Include.NON_NULL is set at class level

我有一个这样的模型class:

@JsonInclude(JsonInclude.Include.NON_NULL)
public class Defect

我需要 JsonInclude.Include.NON_NULL 来忽略 null 值。但我有一个 属性 有时需要 null

@JsonProperty("blocked")
private String blocked;

有没有一种方法可以动态地(在 运行 时间)设置是否包含此值?

您应该能够用字段级别 @JsonInclude 覆盖 class 级别 @JsonInclude,如下所示:

@JsonInclude(JsonInclude.Include.ALWAYS)
@JsonProperty("blocked")
private String blocked;