如何解决springboot中LocalDateTime 返回前端Object对象的问题
nbstudy 发表于 2024-08-08 10:20:08
Mysql 数据库类型为datetime
, Java Bean 为 LocalDateTime
类型, 前端返回如下格式:
java
createdAt": {
"month": "JUNE",
"year": 2024,
"dayOfMonth": 21,
"dayOfWeek": "FRIDAY",
"dayOfYear": 173,
"monthValue": 6,
"hour": 9,
"minute": 0,
"nano": 0,
"second": 0,
"chronology": {
"id": "ISO",
"calendarType": "iso8601"
}
}
解决方案1:将 LocalDateTime 改为Date类型。
解决方案2:手动指定JSON解析类型
java
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(value = "created_at",fill = FieldFill.INSERT)
private LocalDateTime createdAt;
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(value = "updated_at",fill = FieldFill.UPDATE)
private LocalDateTime updatedAt;