springboot对ZonedDateTime返回结果json是string-源码分析


java.time.ZonedDateTime

application/json格式默认使用ObjectMapper实例进行序列化

controller返回后,打断点,可以看到,对应application/json,可以看到会选择ObjectMapper进行转化
converter: org.springframework.http.converter.json.MappingJackson2HttpMessageConverter
请添加图片描述
在这里插入图片描述
请添加图片描述
org.springframework.boot.autoconfigure.http.JacksonHttpMessageConvertersConfiguration.MappingJackson2HttpMessageConverterConfiguration#mappingJackson2HttpMessageConverter

ObjectMapper自动注入分析

具体看自动配置类:spring-boot-autoconfiguration.jar的org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration
请添加图片描述
请添加图片描述请添加图片描述

请添加图片描述
相当于:
MAPPER.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
MAPPER.configure(SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS, false);
所以springboot返回的时间默认不是long类型;

springboot关于jackson配置

1.配置文件:spring.jackson.time-zone=Asia/Shanghai
2.会注入到spring-boot-autoconfiguration.jar的JacksonProperties

以时区配置为例
请添加图片描述
请添加图片描述
请添加图片描述

相关推荐

  1. Spring DefaultListableBeanFactory分析

    2024-07-11 13:16:02       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 13:16:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 13:16:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 13:16:02       58 阅读
  4. Python语言-面向对象

    2024-07-11 13:16:02       69 阅读

热门阅读

  1. 达梦数据库系列—23. DSC集群搭建

    2024-07-11 13:16:02       17 阅读
  2. RabbitMQ 迁移

    2024-07-11 13:16:02       21 阅读
  3. 【编程范式】理解响应式编程(reactive programming)

    2024-07-11 13:16:02       26 阅读
  4. Python 循环语句

    2024-07-11 13:16:02       21 阅读
  5. 【EasyExcel】动态替换表头内容并应用样式

    2024-07-11 13:16:02       21 阅读
  6. IPython的使用技巧整理

    2024-07-11 13:16:02       23 阅读
  7. uniapp踩坑小伎俩记录

    2024-07-11 13:16:02       22 阅读
  8. anaconda新建虚拟环境并同步至jupyter

    2024-07-11 13:16:02       20 阅读