场景:后台返回给页面的时间统一差8小时。
分析:差八小时,应该是时区问题。具体的是哪一层出的问题呢,mybatis?mysql?系统时间?
解析:
1.查询mysql时区(正常)
输入show variables like "%time_zone%";,显示当前时区
全局参数system_time_zone
系统时区,在MySQL启动时会检查当前系统的时区并根据系统时区设置全局参数system_time_zone的值。
全局参数time_zone
用来设置每个连接会话的时区,默认为system时,使用全局参数system_time_zone的值。
中国标准时间=CST(China Standard Time) UT+8:00 。
mysql的时区=system_time_zone+time_zone
2.mybatis的时间出问题啦?系统时间出问题啦?
代码debug调试,显示代码取的当前系统时间正常,但是写入库的时候就异常差了八小时。初步怀疑是mybatis的什么配置异常导致。
mybatis我找到可能影响时区的就是连接串上的配置,