0

我从我的 HSQL 数据库中提取日期,它们显示正确,但在内部它们似乎是错误的。大多数日期都是默认值,其值为 1970-01-01。在调试时,我可以看到一个名为“fastTime”的字段,它说它是-3.600.000,正好是它应该是前一分钟......

当我现在将这些日期与 fastTime 为 0 的一些生成值混合时,比较错误并且选择了错误的日期。

这非常烦人,因为现在仅在从 DB 中提取值时添加该值,但切换到另一个 DBMS 将需要恢复此更改。

所以..这只是一个错误还是发生了什么?

4

1 回答 1

0

如果日期显示正确,那么它们对于您的时区是正确的。

如果 fastTime 指示您报告的值,则表示您的时区是 GMT+1 小时。如果 fastTime 为 0,则日期将表示 GMT 的午夜,而不是您的时区。

当您在 Java 中对属于不同区域的日期进行比较时,您需要考虑时区。您可以为此目的使用 Java 日历对象。

于 2013-03-06T18:28:02.183 回答