springboot Jackson全局配置过程

 更新时间:2026年05月27日 14:12:10   作者:小花卷的dad  
SpringBoot Jackson 全局配置详解,介绍如何针对单个对象属性、配置文件及自定义 ObjectMapper 进行序列化规则的配置

springboot Jackson全局配置

springboot默认使用Jackson对请求载体进行反序列化和对响应数据进行序列化,那么,在序列化过程中,当我们希望加入一些特定规则时,spring-boot提供了几种解决方案,如下。

使用Jackson注解

可针对单个对象的某个属性配置特定的序列化规则

例如:

    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private Date createDate;

使用配置文件,可全局的配置特定的序列化规则

例如:

spring:
  jackson:
    date-format: yyyy-MM-dd hh:mm:ss

注入自定义的ObjectMapper

覆盖默认的OjectMapper,可全局的配置特定的序列化规则

例如:

    @Bean
    public ObjectMapper objectMapper(){
        ObjectMapper objectMapper = new ObjectMapper();
        //日期格式
        objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
        //设置时区
        objectMapper.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
        //序列化-忽略null值的属性
        objectMapper.setSerializationInclusion(Include.NON_NULL);
        //序列化-允许序列化空对象
        objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
        //反序列化-在遇到未知属性的时候不抛出异常
        objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
        return objectMapper;
    }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java、python、JavaScript以及jquery循环语句的区别

    java、python、JavaScript以及jquery循环语句的区别

    本篇文章主要介绍java、python、JavaScript以及jquery的循环语句的区别,这里整理了它们循环语句语法跟示例,以便大家阅读,更好的区分它们的不同
    2016-07-07
  • PowerJob LockService方法工作流程源码解读

    PowerJob LockService方法工作流程源码解读

    这篇文章主要为大家介绍了PowerJob LockService方法工作流程源码解读,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Java中的@SneakyThrows注解详解

    Java中的@SneakyThrows注解详解

    这篇文章主要介绍了Java中的@SneakyThrows注解详解,@SneakyThrows将当前方法抛出的异常,包装成RuntimeException,骗过编译器,使得调用点可以不用显示处理异常信息,需要的朋友可以参考下
    2023-10-10
  • MybatisPlus BaseMapper 中的方法全部 Invalid bound statement (not found Error处理)

    MybatisPlus BaseMapper 中的方法全部 Invalid bound statement (not f

    这篇文章主要介绍了MybatisPlus BaseMapper 中的方法全部 Invalid bound statement (not found)的Error处理方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Spring Xml装配Bean的思路详解

    Spring Xml装配Bean的思路详解

    在Spring中提供了三种方式来对Bean进行配置,本文针对每种方式给大家介绍的非常详细,对Spring Xml装配Bean的思路相关知识感兴趣的朋友一起看看吧
    2021-10-10
  • Mybatis中@Param注解的用法详解

    Mybatis中@Param注解的用法详解

    @Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中,下面这篇文章主要给大家介绍了关于Mybatis中@Param注解用法的相关资料,需要的朋友可以参考下
    2022-07-07
  • Springboot-admin整合Quartz实现动态管理定时任务的过程详解

    Springboot-admin整合Quartz实现动态管理定时任务的过程详解

    Quartz是一款Java编写的开源任务调度框架,同时它也是Spring默认的任务调度框架,它的作用其实类似于Timer定时器以及ScheduledExecutorService调度线程池,这篇文章主要介绍了Springboot-admin整合Quartz实现动态管理定时任务,需要的朋友可以参考下
    2023-04-04
  • mybatis Reflector反射类的具体使用

    mybatis Reflector反射类的具体使用

    Reflector类是MyBatis反射模块的核心,负责处理类的元数据,以实现属性与数据库字段之间灵活映射的功能,本文主要介绍了mybatis Reflector反射类的具体使用,感兴趣的可以了解一下
    2024-02-02
  • java poi之XWPFDocument如何读取word内容并创建新的word

    java poi之XWPFDocument如何读取word内容并创建新的word

    这篇文章主要介绍了java poi之XWPFDocument如何读取word内容并创建新的word问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Java中enum枚举类型的基本特性详解

    Java中enum枚举类型的基本特性详解

    这篇文章主要介绍了Java中enum枚举类型的基本特性详解,enum关键字用于创建一个新类型,其中包含一组数量有限的命名变量,并视这些变量为常规程序组件,实践表明这是一种非常有用的类型,需要的朋友可以参考下
    2023-11-11

最新评论