2013-10-28 43 views
-1

其实如何获得原件的日期和时间在Java

Date date = new Date(); 

会给我们哪里运行应用程序该服务器的日期。 如果特定的服务器在这种情况下设置了日期和时间错误,我们如何获得真实的日期和时间?

+0

我想用一个web服务。但是,你必须考虑延迟。 –

+0

“错误”是否意味着时区未被记录,或者它完全不正确? – azz

回答

1

我不会担心服务器的正确日期。我的意思是服务器通常由您管理,所以只需正确设置时间或使用NTP自动设置正确的时间。

这是客户的日期/时间,你应该担心,因为这是由你的用户设置,并可能是错误的所有的时间。如果您需要信任客户端的时间,并且需要它对多个用户来说是可靠和可比较的,那么从服务器中检索时间并考虑延迟(如果需要的话)。

+0

感谢Matthias .... –

+0

我同意Matthias。为了仔细检查服务器,我添加了启动服务器应用程序时运行的代码,以便从可靠来源获取时间并与服务器的计算机时钟进行比较。如果差距太大,我会发出警报,发送电子邮件或其他信息。对于长时间运行的应用程序,编写一个大部分时间休眠的守护进程,并且偶尔醒来后运行相同的检查。如果您有权访问服务器,请确认它正确地从其他来源获取当前时间,只需简单地设置其时钟,然后等待查看是否自行更正(但在适当的时间这样做)。 –

+0

[获取当前时间](http://www.commandlinefu.com/commands/view/4215/get-the-time-from-nist.gov)来自美国国家标准与技术研究院。例如:'curl -s time.nist.gov:13' –

相关问题