【发布时间】:2018-01-05 12:08:27
【问题描述】:
使用时出现错误:
protected LocalDate getLocalDate( Date date ) {
if ( date != null ) {
return LocalDate.fromMillisSinceEpoch( date.getTime());
}
return null;
}
如果我的 java.util.Date 是 2017 年 9 月 30 日,则它会被转换并存储在 Cassandra 表中,为 2017 年 9 月 29 日 然而 当我使用
将 LocalDate 转换为 java.util.DateDate interestOnlyEndDate =
new Date(row.getDate("interest_only_end_date").getMillisSinceEpoch());
从数据库中检索行对象的位置,正确创建日期 截至 2017 年 9 月 29 日
【问题讨论】:
-
在存储到数据库之前转换为毫秒的机器的时区和转换回日期的机器的时区是否相同?
-
谢谢,我不知道如何检查,但我会看看。目前所有代码都在一台机器上运行,用于开发目的
-
嗨,我 Mac 上的 TimeZone 设置为 BST,所以我在用户配置文件中设置:TZ=BST,然后重新启动 Cassandra 和 Tomcat,但仍然遇到同样的问题