SpringBoot中使用Jackson将null值转化为""或者不返回的配置

第一种方式:SpringBoot中使用Jackson将null值转化为""

前言:在实际项目中难免会遇到null值的出现,但是我们转json时并不希望出现NULL值,而是将NULL值转化为 “” 这种空的字符串。那么,我们应该如何处理呢?在SpringBoot中,新建一个配置类即可。

@Configuration
public class JacksonConfig {

    @Bean
    @Primary
    @ConditionalOnMissingBean(ObjectMapper.class)
    public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder) {
        ObjectMapper objectMapper = builder.createXmlMapper(false).build();
        objectMapper.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {
            @Override
            public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
                jsonGenerator.writeString("");
            }
        });
        return objectMapper;
    }
}

如此一来,遇到NULL值的时候,都会转化为""的形式。

第二种方式:

就是在yml文件中配置:

spring:
  jackson:
    default-property-inclusion: non_null

第三种方式:

就是在实体类上使用注解:

@JsonInclude(JsonInclude.Include.NON_NULL)

 

 

上一篇:mybatis(Controller返回JSON数据(集合、日期、日期工具类))


下一篇:Java之JSON操作(Jackson)