hibernate正在为每个db更新添加utc偏移量

v1uwarro  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(283)

我有一个mysql数据库,它的列是time类型的。我正在使用hibernate进行orm。休眠时间类型为 java.sql.Time . 我注意到每当我更新表中的一列时,时间值也会被更新。每次更新都会添加utc偏移量。例如,考虑一个带有 name (字符串)和时间字段。让时间的初始db条目为“00:00:00”。现在如果我更新 name 使用endpoint+hibernate查询,时间值在db中更新为“05:00:00”。如果我更新 name 同样,时间值在db中变为“10:00:00”。顺便说一下,我的时区是东部。为什么会发生这种情况?我该如何预防?
设置 hibernate.jdbc.time_zone: UTC 修复了这个问题,但我想了解更多关于这个行为的信息。

f4t66c6m

f4t66c6m1#

你试过tot user localtime而不是java.sql.time吗?
localtime应该能处理所有时区陷阱。
java.sql.time不支持时区。

相关问题