mybatis获取时间数据出现误差

问题:

       利用mybatis获取数据时,出现datetime 和 timestamp都会出现时间误差,特别是在使用获取时间段这个操作的时候,会出现时间段误差。

解决方案:

    因为所有的数据库都不是使用中国时区的,所以我们只需要改数据库的时区到中国。这样我们就能避免插入时出现的时间问题。

set global time_zone = '+8:00';
set time_zone = '+8:00';
flush privileges;

    第二个我们要避免的是获取数据的时候,出现的时间误差。我们需要在jdbc连接时设置时区转换useTimezone和指定时区time_zone

jdbc:mysql://0.0.0.0/database?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&useTimezone=true

其中重点是参数设置

useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&useTimezone=true

猜你喜欢

转载自blog.csdn.net/mathew_leung/article/details/105598585
今日推荐