@JsonInclude(Include.NON_NULL)按预期工作

问题描述:

我在Response类中添加了@JsonInclude(Include.NON_NULL)注释。@JsonInclude(Include.NON_NULL)按预期工作

@JsonInclude(Include.NON_NULL) 
public class Response { 

    @JsonProperty 
    private String message; 

// getter-setters 
} 

如果该值是空的属性不会在JSON

包括

不过还是我得到这个属性为NULL。

{ 
"message": null 
} 

可能是什么原因?我错过了什么?

+0

这不就是Include.NON_NULL注释的要点吗?如果你想包括所有的领域,然后删除注释。它可能工作是因为@JsonSerialize(include = Inclusion.NON_NULL)已被弃用。 – 2016-07-05 23:49:46

我试图

@JsonSerialize(include = Inclusion.NON_NULL) 

这一翻译的

@JsonInclude(Include.NON_NULL) 

和它的工作如预期。

最新版本使用此语法。

+0

谢谢!我在使用Jackson的2.3.3版本的Spring项目中遇到了这个问题。 – 2016-02-02 15:51:39

+3

com.fasterxml.jackson.databind.annotation.JsonSerialize.Inclusion现在不推荐使用: - / – snegi 2016-03-16 01:14:24