Java保存日期到mysql中datetime类型字段的问题

Java保存日期数据时遇到保存日期不正确的问题处理

  1. 首先确认保存的是日期类型,并且保存完之后数据库保存的时间和实际插入的日期不一致
  2. 确认使用的是mysql

解决办法

  • 确认mysql的设置show variables like '%time_zone%'
system_time_zone    CST
time_zone    SYSTEM

如果是上述的则是正确的

  • 如果修正mysql的时间配置
set GLOBAL time_zone='+8:00';
set time_zone='+8:00';
flush PRIVILEGES;
  • 确认配置的数据库连接中有&serverTimezone=GMT%2b8配置
  • 上述步骤完成之后如果发现返回的json时间和实际保存时间不一致则需要设置json转换的时间
springboot的jackson配置:
spring:
  jsckson:
    time-zone: GMT+8

你可能感兴趣的:(Java保存日期到mysql中datetime类型字段的问题)