Spring获取日期时间差8小时问题解决

问题

默认情况下在使用spring的@ResponseBody返回json串时,如果有日期类型的数据,会发现在日期会莫名其妙的差8小时
比如:
2017-12-20 10:16:23.0
结果是:
2017-12-20 02:16:23

分析

经过查阅相关资料发现在spring转json的默认实现jackson中会根据时区去转换时间,而jackson的默认时区跟
国内应该是相差8小时,所以再时间换算上自动减去了8小时

解决

在spring boot的yml文件中配置
spring:
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8
此外在数据库配置中最好也设置下时区参数(mysql)
url?...&serverTimezone=GMT%2b8

猜你喜欢

转载自blog.csdn.net/m0_38043362/article/details/78855196