【发布时间】:2021-06-11 07:05:04
【问题描述】:
我有一个带有几个 TIME 列字段的 MySQL 表。现在,在每一行中,字段都包含存储的时间数据,例如 16:45:00 和 17:30:00,当我从 MySQl Workbench 进行一些查询时,我可以看到它是正确的。
问题是当我想用java.sql.Time 从 DDBB 取回数据时。值更改为 09:45:00 和 10:30:00。我不明白为什么。我尝试使用TimeZone、Calendar 和许多其他可能的解决方案,但什么都没有……它不起作用。
¿有什么想法吗?提前致谢。
【问题讨论】:
-
您是否尝试过使用 vm 参数?示例:
-Duser.timezone="UTC" -
我建议你不要使用
java.sql.Time。该课程设计不良且早已过时。而是使用来自java.time, the modern Java date and time API 的LocalTime。有关如何从 MySQL 中检索LocalTime,请参阅 my answer here。