Cannot deserialize value of type java.sql.Timestamp
from String “2023-05-01”: not a valid representation (error: Failed to parse Date value ‘2023-05-01’: Unparseable date: “2023-05-01”)
问题描述
在做一个SpringBoot项目的时候遇到了在前端中,拿到时间Timestamp时间类型,数据库中对应的字段数据类datatime,在给这个对象封装为json格式存储在数据库中,就爆出了这个错误
Cannot deserialize value of type `java.sql.Timestamp` from String "2023-05-01":
not a valid representation (error: Failed to parse Date value '2023-05-01': Unparseable date: "2023-05-01")
原因分析:
数据类型转换错误,错误的转换Date时间类型
解决方案:
在application.yml中添加
spring:
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd
在对应的类中加入
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Note {
private Integer id;
private String noteName;
private String noteContent;
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Timestamp noteTime;
private User user;
}