You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot中Jackson序列化忽略Null字段配置(无法修改导入POJO)

解决Jackson全局忽略Null值字段的方案

一、手动配置ObjectMapper(非Spring环境)

如果是自己手动创建ObjectMapper实例,直接设置序列化规则就能全局忽略null值:

ObjectMapper objectMapper = new ObjectMapper();
// 全局生效:序列化时跳过所有值为null的字段
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);

用这个ObjectMapper序列化任何POJO(包括第三方库的只读类)时,都会自动剔除null值字段,无需修改POJO源码。

二、Spring Boot/Spring MVC全局配置

如果是在Spring项目中,要让控制器返回的JSON统一忽略null值,有两种便捷方式:

方式1:配置文件快速实现

直接在application.properties或application.yml中添加全局配置:

  • properties格式:
spring.jackson.default-property-inclusion=non_null
  • yml格式:
spring:
  jackson:
    default-property-inclusion: non_null

这种方式零代码,Spring会自动将配置应用到全局的ObjectMapper实例,所有控制器的响应都会自动过滤null值字段。

方式2:自定义配置类(支持扩展)

如果需要搭配其他Jackson自定义规则(比如日期格式化、枚举处理),可以写一个配置类:

import com.fasterxml.jackson.annotation.JsonInclude;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;

@Configuration
public class JacksonConfig {
    @Bean
    public Jackson2ObjectMapperBuilderConfigurer jacksonConfigurer() {
        return builder -> {
            // 全局设置忽略null值
            builder.serializationInclusion(JsonInclude.Include.NON_NULL);
            // 这里可以追加其他配置,比如builder.dateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
        };
    }
}

也可以直接自定义ObjectMapper Bean:

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class JacksonConfig {
    @Bean
    public ObjectMapper objectMapper() {
        ObjectMapper objectMapper = new ObjectMapper();
        objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
        return objectMapper;
    }
}

这两种配置都会覆盖Spring默认的ObjectMapper,全局生效处理所有POJO的序列化。

内容的提问来源于stack exchange,提问作者Hassan Raza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 13:34:53