zoukankan      html  css  js  c++  java
  • 定制LocalDateTime序列化,反序列化格式

    SpringBoot版本:

    <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.12.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
    </parent>

    问题描述:
      项目使用LocalDateTime作为日期类型,默认下,前端传参,后端返回的字符串形式如:2016-10-20T11:08:46
    现在要求:
      对应的日期字符串格式如下:2016-10-20 11:08:46,即将 T 删除

    解决方案:
      SpringBoot中使用Jackson2ObjectMapperBuilderCustomizer作为序列化,反序列化器,通过配置该类可以定制时期格式
    代码如下:
    @Configuration
    public class LocalDateTimeSerializerConfig {
        @org.springframework.beans.factory.annotation.Value("${spring.jackson.date-format:yyyy-MM-dd HH:mm:ss}")
        private String pattern;
    
        @Bean
        public LocalDateTimeDeserializer localDateTimeDeserializer() {
            return new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(pattern));
        }
    
        @Bean
        public LocalDateTimeSerializer localDateTimeSerializer() {
            return new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(pattern));
        }
    
        @Bean
        public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
            return builder -> builder.deserializerByType(LocalDateTime.class, localDateTimeDeserializer())
                    .serializerByType(LocalDateTime.class, localDateTimeSerializer());
        }
    }
  • 相关阅读:
    eclipse基础环境配置和svn、maven的配置以及maven的安装
    KindEditor 上传图片浏览器兼容性问题
    FastDFS 工具类实现文件上传_02
    FastDFS 实现图片上传_01
    jvm 堆、栈 、方法区概念和联系
    jvm 虚拟机的组成部分
    利用jQuery实现CheckBox全选/全不选/反选
    FastDFS架构
    Nginx 实现负载均衡
    Nginx 实现反向代理
  • 原文地址:https://www.cnblogs.com/m2492565210/p/15005349.html
Copyright © 2011-2022 走看看