几个概念:
ISO 8601的标准格式是:YYYY-MM-DDTHH:mm:ss.sssZ
,分别表示:
YYYY
:年份,0000 ~ 9999MM
:月份,01 ~ 12DD
:日,01 ~ 31T
:分隔日期和时间HH
:小时,00 ~ 24mm
:分钟,00 ~ 59ss
:秒,00 ~ 59.sss
:毫秒Z
:时区,可以是:Z
(UFC)、+HH:mm
、-HH:m
1.默认情况下
前台ajax提交, 提交ISO8601国际标准时间格式(如要表示北京时间2004年5月3日下午5点30分8秒,可以写成2004-05-03T17:30:08+08:00或20040503T093008+08)、时间戳格式时,
后台@requestbody接收json参数 映射到 实体类中 Date(时间日期)默认转换为时间戳格式,
yyyy-MM-dd HH:mm:ss 格式从前端提交时,会报错,无法进行默认格式转换。
2.解决yyyy-MM-dd HH:mm:ss 格式时间提交报错的解决方法:
在该Date类型字段上添加注解
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
可以使前端可以传输yyyy-MM-dd HH:mm:ss 格式,(ISO8601会报错,时间戳会报错)且后台数据格式为yyyy-MM-dd HH:mm:ss 格式