mybatis - mybatis保存日期类型和从数据库读取日期不一样
问题描述
现有 domain
为 OrderDo
:
class OrderDo{
//....
private Date gmtCreate;
}
使用 mybatis 插入数据库成功后, 然后查询已经插入的数据,发现查询出来的日期比当前时间还要超前,调试了半天才发现,应该是时区的问题 >_< , 心中无限WTF
在原来配置文件 application.yml
中:
spring:
application:
name: order
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
password: root
username: root
url: jdbc:mysql://localhost:3306/db_spring?serverTimezone=UTC
解决方案
将配置文件中的 serverTimeZone=UTC
改为 serverTimeZone=Asia/Shanghai
:
spring:
application:
name: order
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
password: root
username: root
# 注意TimeZone!!
url: jdbc:mysql://localhost:3306/db_spring?serverTimezone=Asia/Shanghai