Tomcat时差解决方案

来源:互联网 发布:免费办公室软件 编辑:程序博客网 时间:2024/04/27 15:04

Tomcat时差实际上是jvm的时差。

那么Tomcat怎样设置时差呢?

免安装版:

在%TOMCAT%\bin\目录下有个catalina.bat文件。

用记事本打开添加一句:

set JAVA_OPTS=-Xms128m -Xmx512m -Duser.timezone=GMT+08

保存后重启Tomcat即可。

Eclipse里为什么还没成功呢?呵呵。Eclipse里要在JVM里添加启动参数:

Tomcat时差解决方案 - Canca Torvals - Ant Software Studio

 

网上找到的。。也收藏一下:

我的抄贴生活又开始了,哈哈。主要是在学习过程中,发现解决一些问题,然后,想记录下来。

在“首选项- >Tomcat - >JVM Settings ”项,设定 JRE 的版本为“ jre1.5.0_06”,并且添加如下几个JVM Parameters :

         -Xms128m

         -Xmx512m

         -Dfile.encoding=UTF8

         -Duser.timezone=GMT+08

这是搜到的一种方法。

另一种方法是:

windows Xp pro service pack2 下Tomcat启动时间为GMT,比北京时间少8小时问题处理

机器系统为windows Xp professional service pack2
JDK版本为1.4.2_09
Tomcat版本为5.0.28
 
问题:用控制台启动tomcat,发现显示时间比北京时间少8小时,在通过WEB SERVICE接口与DELPHI通信中,因为时间少8小时导致通信出错.
分析:开始以为是TOMCAT设置时区未设置,不过TOMCAT好象不设置时区咯
           第二步JDK上找原因,不过JDK是用native调用的JVM里的配置咯;
           第三步JVM里的设置,java -Duser.timezone=Asia/Shanghai不起作用咯,继续找.*.*;
           第四步猜想JVM应该是取的windows的时区设置,网上搜搜还真找到几个时区设置出错的情况(非JAVA咯);
            第五步找了一台能正常设置时区windows注册表 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones],备份之,覆盖之.;
       测试.通过.HOHO~~~~;
据偶理解(好象本来就是这样呼),由于Windows时区设置出错,导致JVM取不到系统设置的时区,JDK在读取时区的时候在取不到的情况下缺省的GMT,从而使Tomcat上显示的时候比北京时间少8小时;
 
然而,我是通过第一种方法解决的,但是,个人还是认为第二种方法的观点是正确的,而第一种方法只不过是在tomcat里打了个补丁。要是,按第二种方法修改了注册表,估计,也不用设置tomcat了。
原创粉丝点击