第一种:(全局)在application.xml直接配置,
这种方式是全局配置,所有返回给前端对象的属性为null或””都不进行序列化;
default-property-inclusion有四个枚举值
- ALWAYS 默认
- NON_DEFAULT 属性为默认值不序列化
- NON_EMPTY 属性为 “” 或者为NULL都不序列化
NON_NULL 属性为NULL时不序列化
spring:
jackson:
#default-property-inclusion: NON_EMPTY
第二种:(单个)给每个类单独设置
给为空时需要忽略序列化的对象属性加 @JsonInclude(Include.NON_NULL),也可以直接加到类上,表示一整个对象的属性为null时都不参与序列化;
括号里写法有四个枚举nclude.Include.ALWAYS 默认
- Include.NON_DEFAULT 属性为默认值不序列化
- Include.NON_EMPTY 属性为 “” 或者为NULL都不序列化
- Include.NON_NULL 属性为NULL时不序列化
第三种:(全局)在SpringBoot的配置文件中
spring.jackson.default-property-inclusion=non_empty