【发布时间】:2018-04-24 00:09:19
【问题描述】:
每当我将 LocalDate 持久保存到 MySQL 数据库时,日期都会存储一天(2017 年 11 月 11 日变为 2017 年 11 月 10 日)。我已经尝试在 MySQL 服务器上的应用程序中设置时区并将 legacyDateTimeCode 设置为 false,但问题仍然存在。关于如何解决它的任何想法?如果我切换到本地 h2 数据库,则日期存储正确。
Spring-boot-starter-parent:1.5.7 休眠 5.2.10 mysql: 5.7 LocalDate 存储在 DATE 字段中
【问题讨论】:
-
通过 JPA 检索时,该值是正确的还是仍然关闭?
-
它在数据库和应用程序中关闭,这就是我好奇的原因。我认为这可能是因为不同的时区设置,这就是为什么我在 mysql 服务器和应用程序中将它们设置为相同的原因。但即便如此,它也关闭了。
-
嗯...运行它的实际机器 (OS) 的时区?我记得几年前有这个问题,不幸的是不再记得细节了。
-
mysql 和应用服务器的UTC
-
this answer 有帮助吗?
标签: mysql hibernate jpa jdbc localdate