本节在 Springboot返回json对象 的基础上,对POJO具体返回属性条件做了一些限制;

1) 对于像password这样的属性,我们不会明文返回在响应中,因此需要通过@JsonIgnore注解将该属性排除于响应返回属性之列;
2)如果属性较多且很多属性返回值都为null,类似的响应对于用户来说是无价值的。因此有时不希望将为NULL的属性放在响应中,可以通过@JsonInclude(JsonInclude.Include.NON_NULL),只有当改属性非空时在置于响应当中。JsonInclude.Include.NON_NULL是一个枚举类,其中还包括其他一些取值(如:ALWAYS,NON_NULL,NON_ABSENT,NON_EMPTY等),可以根据不同条件进行选择。
3) @JsonFormat注解可以将对应的字段根据一定的规则进行格式化
4) @JsonIgnoreProperties可以替换@JsonIgnore来忽略指定的字段;如@JsonIgnoreProperties({ "password"});


1) 可以看到password我们设置了值,但是没有出现在响应中,因为我们为该属性添加了@JsonIgnore注解;
2)并且Desc属性没有出现在响应中,因为其值为null,而我们设置了@JsonInclude(JsonInclude.Include.NON_NULL),只有非空时,属性才会在响应当中;
3)birthday属性已经按照相应的要求格式化在;
网友评论