时间Date

你有没有思考过时间问题:

前端为什么可以直接看见时间格式的数据

后端怎么接受的数据,怎么处理的

一般来说:前端传输来数据都是时间格式的字符串,那么后端需要能够解析时间格式的字符串,归功于JSONFormat ,可以解析

前端传输给后端时间

后端传输给前端时间

后端传输给数据库时间(你猜为什么会有java.sql.Date)

如果你用Date,你凭什么来让后端的Date的时间戳变为你想要的格式 即;

前后端传输指定格式的时间

加一个JSONFormatter可以传来时间解析

JsonFormat介绍

时间Date_第1张图片

@JsonFormat 是 Jackson 库提供的注解之一,用于定制日期格式的序列化和反序列化规则。它可以用在类的字段或者 getter 方法上,指定日期的格式,以确保 JSON 数据在序列化和反序列化时能够正确地处理日期。

在你的代码中,你使用了 @JsonFormat 注解在类的字段上:

@JsonFormat(pattern = "yyyy-MM-dd")
Date birthday;

这段代码的作用是告诉 Jackson 在序列化和反序列化 birthday 字段时,使用指定的日期格式 "yyyy-MM-dd"。这样,当你将对象序列化为 JSON 字符串时,日期会以指定的格式呈现,反之亦然。

注意:@JsonFormat 注解只是在序列化和反序列化时起作用,对于数据库的存储和检索并没有直接的影响。如果你遇到时区问题,可能需要在数据库操作层面进行额外的处理。

一般还有时区的问题,要加 timezone = "GMT+8"

不然出现我这篇文章的问题 -> 大雾来了

你可能感兴趣的:(JavaSE,spring,java-ee,intellij-idea)