【发布时间】:2017-06-30 04:11:09
【问题描述】:
我想获取当前时间(即 IST)和存储在 DB(EST) 中的时间的差异。为此,我试图在计算差异之前将当前时间转换为 EST。但它不起作用。在以下方法中,
本地时间不会仅转换为 EST。你能建议我更好的方法吗?
getModifiedDate的返回类型是java.sql.Timestamp,数据类型
该栏目为DATE
代码:
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("EST"));
cal.setTimeInMillis(System.currentTimeMillis());
cal.getTimeInMillis() - emp.getModifiedDate().getTime();
我试图使用 SimpleDateFormat 来做,但我不确定如何继续使用这种方法。
如果你能提供有帮助的代码sn-p
【问题讨论】:
-
“emp”从何而来?
-
emp是映射到表的实体类Employee的obj引用 -
emp.getModifiedDate().getTime();的输出是什么? -
您遇到的问题是毫秒是同一时间,因为它是基于 UTC 的。时区为 UTC 时间提供了本地视图。
-
我不认为我理解任何转换的必要性。
Timestamp只是一个时间点,在所有时区都是一样的。如果您可以告诉我们您的数据库列的数据类型,并给我们一个示例值和该值的请求结果(在以色列标准时间的某个时间点),我们可能会为您提供更好的帮助(哎呀,IST 是爱尔兰夏令时间?印度标准时间?这三个字母的缩写非常危险且令人困惑)。
标签: java timezone datetime-conversion