我是靠谱客的博主 冷艳招牌,最近开发中收集的这篇文章主要介绍解决 SpringBoot 在 JDK8 中 LocalDateTime (反)序列化问题问题复现解决方案,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
问题复现
Java 8 date/time type `java.time.LocalDateTime` not supported by default:add Module "com.fasterxml.jackson.datatype:jackson-datatype-jsr310" to enable handling....
翻译
在默认情况下Java 8不支持 LocalDateTime 需要添加 com.fasterxml.jackson.datatype:jackson-datatype-jsr310 依赖
原因
没有添加序列化和反序列化器
解决方案
添加依赖
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.13.0</version>
</dependency>
指定LocalDateTime的序列化以及反序列化器
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
例如:
import com.baomidou.mybatisplus.annotation.*;
import java.time.LocalDateTime;
import java.io.Serializable;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import io.swagger.annotations.ApiModelProperty;
public class Workorder implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建时间")
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
@ApiModelProperty(value = "更新时间")
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
}
最后
以上就是冷艳招牌为你收集整理的解决 SpringBoot 在 JDK8 中 LocalDateTime (反)序列化问题问题复现解决方案的全部内容,希望文章能够帮你解决解决 SpringBoot 在 JDK8 中 LocalDateTime (反)序列化问题问题复现解决方案所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复