LocalDateTime序列化成yyyy-MM-dd HH:mm

简介: LocalDateTime序列化成yyyy-MM-dd HH:mm

1.LocalDateTime 对象如何序列化成yyyy-MM-dd HH:mm:ss


使用jackon对LocalDateTime对象进行序列化时

会变成这样的格式

  {
    "year": 2020,
    "month": "AUGUST",
    "era": "CE",
    "dayOfMonth": 1,
    "dayOfWeek": "TUESDAY",
    "dayOfYear": 213,
    "leapYear": false,
    "monthValue": 8,
    "chronology": {
        "id":"ISO",
        "calendarType":"iso8601"
     }
  }

如何将他变成 2020-01-02 12:12:12 这样的形式呢

需要这么做

  ObjectMapper mapper = new ObjectMapper();
  mapper.registerModule(new JavaTimeModule());
  mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);

就是激活JavaTimeModule

添加依赖

   <dependency>
       <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
   </dependency>

2.序列化包含泛型的java对象

假如序列化的对象包含泛型,那么可以使用TypeReference

import com.fasterxml.jackson.core.type.TypeReference;
DataDto<List<VibrationData>> o = mapper.readValue(json, 
  new TypeReference<DataDto<List<VibrationData>>>() {});

DateDto:

package com.tonglei.recevce.entity.dto;
public class DataDto<T> {
    private T data;
    private int len;
    private String instrument;
    public DataDto(){}
    public DataDto(T data, int len, String instrument) {
        this.data = data;
        this.len = len;
        this.instrument = instrument;
    }
    public T getData() {
        return data;
    }
    public void setData(T data) {
        this.data = data;
    }
    public int getLen() {
        return len;
    }
    public void setLen(int len) {
        this.len = len;
    }
    public String getInstrument() {
        return instrument;
    }
    public void setInstrument(String instrument) {
        this.instrument = instrument;
    }
}

参考资料

目录
相关文章
|
6月前
|
Java
LocalDateTime的全局自定义序列化
LocalDateTime的全局自定义序列化
|
JSON 前端开发 Java
SpringBoot - 优雅解决 SpringBoot 在 JDK8 中 LocalDateTime(反)序列化问题
SpringBoot - 优雅解决 SpringBoot 在 JDK8 中 LocalDateTime(反)序列化问题
725 0
|
JSON Java 数据格式
Java:jackson处理LocalDateTime序列化的时候报错InvalidDefinitionException
Java:jackson处理LocalDateTime序列化的时候报错InvalidDefinitionException
1054 0
|
JSON 前端开发 Java
为啥你用@JsonFormat注解反序列化LocalDateTime总失败?
最近,有个小伙伴问我:我在SpringBoot项目中,使用@JsonFormat注解标注LocalDateTime类型的字段时,LocalDateTime反序列化失败,这个我该怎么处理呢?别急,我们一起来解决这个问题。
943 0
为啥你用@JsonFormat注解反序列化LocalDateTime总失败?
|
JSON 缓存 NoSQL
解决redis序列化java8 LocalDateTime
解决redis序列化java8 LocalDateTime
1228 0
解决redis序列化java8 LocalDateTime
|
Dubbo Java 应用服务中间件
HSF/Dubbo序列化时的LocalDateTime, Instant的性能问题
### 来源 在对Dubbo新版本做性能压测时,无意中发现对用例中某个TO(Transfer Object)类的一属性字段稍作修改,由Date变成LocalDateTime,结果是吞吐量由近5w变成了2w,RT由9ms升指90ms。
2892 0
|
3月前
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
12天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
22天前
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第22天】在Java的世界里,对象序列化和反序列化是数据持久化和网络传输的关键技术。本文将带你了解如何在Java中实现对象的序列化与反序列化,并探讨其背后的原理。通过实际代码示例,我们将一步步展示如何将复杂数据结构转换为字节流,以及如何将这些字节流还原为Java对象。文章还将讨论在使用序列化时应注意的安全性问题,以确保你的应用程序既高效又安全。
|
1月前
|
存储 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第9天】在Java的世界里,对象序列化是连接数据持久化与网络通信的桥梁。本文将深入探讨Java对象序列化的机制、实践方法及反序列化过程,通过代码示例揭示其背后的原理。从基础概念到高级应用,我们将一步步揭开序列化技术的神秘面纱,让读者能够掌握这一强大工具,以应对数据存储和传输的挑战。