Spring Boot 接收前端时间数据多 8 小时问题解决
问题原因
Spring Boot 在接收请求参数或者返回处理结果时,对时间数据的处理默认使用的是 Jackson,而 Jackson 默认使用 GMT 时区(相对于中国是少了 8 小时)进行转换,这就导致接收或返回的时间数据经过处理后会与实际时间相差 8 个小时。
后端接收前端传递的时间数据时,会多 8 个小时
前端接收后端返回的时间数据时,会少 8 个小时
解决
在配置文件中添加如下配置:
spring:
jackson:
time-zone: Asia/Shanghai
date-format: yyyy-MM-dd HH:mm:ss