如何在Java中获取当前服务器时间?

Pra*_*mha 3 java websphere java-ee

如何在Java中获取当前服务器的时间?我试过,System.currentTimeMills()但它返回给我客户的时间而不是服务器时间.我希望以毫秒为单位获得"服务器"时间.

请不要关闭这个问题.我在网上搜索,但我不明白.所有代码都返回值1970.我想要的是例如:当前服务器时间9/25/2012:10:19AM以毫秒为单位.

我也搜索了其他问题,这与其他问题没有重复.

Kal*_*Kal 13

System.currentTimeMillis() 返回自1970年以来的毫秒数.

如果在服务器上运行它,您将获得服务器时间.如果您在客户端上运行它(例如Applet,独立桌面应用程序等),您将获得客户端时间.要在客户端上获取服务器日期,请设置一个调用,将格式化字符串中的服务器时间返回给客户端.

如果您希望以某种方式格式化日期,请首先创建一个Date()对象,然后使用格式化它SimpleDateFormat

Date d1 = new Date();
SimpleDateFormat df = new SimpleDateFormat("MM/dd/YYYY HH:mm a");
String formattedDate = df.format(d1);
Run Code Online (Sandbox Code Playgroud)

  • 因为@pradeepsimha提到他需要毫秒值,所以他可能会返回从currentTimeMillis()返回的long并仅在客户端转换,并且会丢失时区. (2认同)

dog*_*ane 6

如果您希望客户端获得服务器的时间,则必须向服务器发出请求并让服务器在响应中发回其当前时间.