Java TIMESTAMP有尾随零,我如何删除



我正在使用Java和hibernate,并且正处于学习一切如何工作的早期阶段。我正在慢慢地学习,但是我在Java的日期方面遇到了一些麻烦。

我目前的问题是,当我从MySQL数据库得到一个时间戳时,它似乎在末尾有一个额外的零负载。当我把它传递给PHP时(是的,这是我们正在编写的Java/PHP应用程序),然后格式化日期以不正确的结果结束。

我看到的是:

2000-08-10 14:09:21 // Time in database
965912961000 // Timestamp from Java of this time
965912961 // The PHP equivalent of the database timestamp - using strtotime()

在Java模型中,我将变量设置为:

@Temporal (TemporalType.TIMESTAMP)
private Date logTime

我的问题是如何去掉后面的三个0 ?显然,我可以用PHP删除这些,但如果可能的话,我宁愿它来自后端Java。

您不清楚为什么要将Date格式化为整数,但这是一个简单的生活事实,Java Date以毫秒为单位测量-而PHP可能以秒为单位(自Unix纪元以来)。

这是一个内部表示,大多数时候你不应该关心它。如果要传输这个整数,可以随意地除以1000,将其从毫秒表示转换为秒表示。

如果你能更清楚地说明你是如何看到整数开始的,我们可能能够帮助更多。

最新更新