Spring MVC中,在controller层使用@RestController或@ResponseBody返回json时,
返回的对象中,有的字段为空,如果想字段为空时,或者字段为null时,不返回该字段。有以下几种方法:
1. 使用注解 @JsonInclude(JsonInclude.Include.NON_NULL)
/**
*@author Honey
*Create on 2021-05-24 13:47:26
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ResourceResponse implements Serializable {
//Include.NON_EMPTY 属性为 空(“”)
或者为 NULL 都不序列化
//Include.NON_NULL 属性为NULL 不序列化
2.
若是使用: Spring Boot,则
在application.properties中添加
spring.jackson.default-property-inclusion=non_null
在Spring Boot 中的application.yml配置全局定义, 这种默认都生效
spring:
jackson:
default-property-inclusion: non_null