linux系统下java程序获取的时间与系统时间不一致

linux系统下java程序获取的时间与系统时间不一致,第1张

造成这种问题的原因是:你的 *** 作系统时区跟你JVM的时区不一致。

你的 *** 作系统应该是中国的时区,而JVM的时区不一定是中国时区,你在应用服务器的Java虚拟机添加如下配置: -Dfileencoding=UTF8 -Dusertimezone=GMT+08
在一个精简的Linux安装上jre,所有的java程序获取的时间都不是系统时间。java程序获取的时间都是GMT时间,而系统是北京时间,是GMT+8,刚好相差8小时。只有两种方法可以解决 :
1、在程序中使用java的函数设定时区。
2、在启动java程序时加参数-Dusertimezone=GMT+8

jre是从/etc/sysconfig/clock这个文件中 获取时区信息的。
附clock文件内容:
ZONE="Asia/Shanghai"
UTC=false
ARC=false
ZONE -- 时区
UTC -- 表明时钟设置为UTC。
ARC -- 仅用于alpha表明使用ARC。

你说的应该是ping值吧,我们是这样做的
1、记录一个开始时间
2、往服务器发送一个命令,这个命令自己定义,简单的没有逻辑处理
3、记录返回的时间
4、用(返回的时间-开始时间)/2,就是服务器ping值,因为ping只是单向的


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10838974.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存