`

java时区问题

阅读更多

最近遇到个怪异的问题,eclipse的时间和电脑时间差了刚好8个小时。开始笨笨的我在代码里人为加上8小时,今天在网上找了一下,发现在eclipse里可以通过参数设置、

问题描述:

date数据在经历  数据库 ->tomcat->java虚拟机 这个过程中可能出现时差的问题。

 

原因是:

三者的时区设置不同。

 

解决方案:

 

1. 针对mySQL:
SET   global   time_zone= '+08:00 ';


2.针对java:
在eclipse的 window->preferences->Java->Installed JREs, 选中自己使用的那个,edit 之。 然后设置参数(写一行): -Duser.timezone=GMT+08


3.针对tomcat:
在catalina.bat中
配置如下:
 set JAVA_OPTS=%JAVA_OPTS% -Duser.timezone=GMT+08 -Xms256m -Xmx800m
 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
 -Djava.util.logging.config.file="%CATALINA_BASE%/conf/logging.properties"
 -Xms256m -Xmx800m(初始化内存大小为256m,可以使用的最大内存为800m),
 -Duser.timezone=GMT+08 //设置为北京时间
(tomcat 时区配置可参考:http://blog.tangjianwei.com/2009/06/04/the-problem-of-tomcat-timezone/
和 http://blog.csdn.net/x_yp/article/details/6234327 )

分享到:
评论
1 楼 feng_vs_fei 2013-01-05  
之前也遇到过这种问题,最后是用System.currentTimeMillis()来解决的

相关推荐

    java的时区问题

    Java的时区问题是一个复杂而重要的主题,尤其是在全球化的软件开发中。时区涉及到日期、时间的计算,以及与特定地理位置相关的夏令时调整。Java提供了丰富的时区支持,但理解其工作原理对于开发出正确处理时间的软件...

    java.util.TimeZone 的世界时区列表

    ### Java.util.TimeZone的世界时区列表解析 #### 一、概述 `java.util.TimeZone` 是Java标准库中的一个类,用于表示不同时区的信息。本文档提供了通过`java.util.TimeZone`类导出的世界范围内时区列表。该列表不仅...

    java转换时区时间过程详解

    Java时区时间转换过程详解 Java时区时间转换是指将一个时区的时间转换成另一个时区的时间,这个过程需要了解时区的概念和计算方法。在本文中,我们将详细介绍时区的概念、UTC时间、格林尼治时间、夏令时、区时转换...

    java 时区转换工具包

    1. 获取时区时间 public static ZonedDateTime getNow(int offset) 2. 解析指定时间 public static ZonedDateTime parse(String date,String dateFormat,int offset) 3. 获取某一天的零点 public static ...

    系统时间注册表,修正JAVA Eclipise时区问题

    用户的测试机安装的win7,测试时发现时间总是差8个小时。 在win7下装JDK1.4和JDK1.5、eclipse,输出系统时区和时间。...导入本压缩包中国时区注册表.reg 解决2003 WIN7 时区问题。 再有疑问联系,CSDN:lawsystem

    java时区转换的理解及示例详解

    Java时区转换的理解及示例详解 Java时区转换是Java编程语言中一个重要的概念,对于时间相关的操作非常重要。在本文中,我们将详细介绍Java时区转换的理解及示例详解。 一、时区的基本概念 时区是指地球上的一个...

    基于java时区转换夏令时的问题及解决方法

    "基于Java时区转换夏令时的问题及解决方法" 在Java中进行时区转换时,需要了解夏令时的概念和时区的表示方法。夏令时是指在夏天的时候,将时钟拨快一个小时,以提早日光的使用。目前有110多个国家采用夏令时。 ...

    Windows2008上运行java产生8小时时差问题原因

    "Windows2008上运行java产生8小时时差问题原因" 在 Windows 2008 环境中运行 ...解决 8 小时时差问题需要检查 Java 的时区设置问题和 JDK 的版本问题。通过解决这些问题,可以确保 Java 应用程序与系统时间保持一致。

    java国际化&时间处理

    为了解决`SimpleDateFormat`的线程安全问题,Java 8引入了`java.time`包,这是新的日期时间API,包含了`LocalDate`、`LocalTime`、`LocalDateTime`、`ZonedDateTime`等类,它们提供了更强大、更安全、更易于使用的...

    WIN7 JAVA获取时间有问题

    综上所述,解决“WIN7 JAVA获取时间有问题”的关键在于检查Java时区设置、系统时间设置,以及确认Java运行环境与Windows 7的兼容性。如果问题依然存在,参考相关博客或其他在线资源,或者对`timezone.reg`文件进行...

    Java对世界不同时区timezone之间时间转换的处理方法

    在不同时区之间转换时间需要考虑两个问题:获取到源时区相对于GMT的差距(考虑夏令时)和获取到目的时区相对于GMT的差距(考虑夏令时)。基本思路是: 1. 获取到源时区相对于GMT的差距(考虑夏令时)。 2. 获取到...

    Java完成UTC与BJT时区的转换

    Java初学者练习题,使用if else循环完成,可对初学者提供一定的参考。

    Java时区转换实例代码解析

    Java时区转换是Java开发中处理时间问题的关键部分,尤其在全球化应用中显得尤为重要。时区转换涉及到地球上的不同地理位置如何以不同的时间表示同一事件。本文将深入探讨时区的概念,时间的表示方式,时间戳的含义,...

    关于Java中的mysql时区问题详解

    "Java 中的 MySQL 时区问题详解" Java 中的 MySQL 时区问题是一种常见的问题,尤其是在分布式系统中,对时区的处理尤为重要。本文将详细介绍 Java 中的 MySQL 时区问题,并通过示例代码进行讲解。 一、时区问题的...

    java中 new date() 打印出的时间与系统时间错了八小时的解决方法

    总的来说,Java中`new Date()` 出现时间差的问题主要源于时区设置,可以通过调整JVM时区或者在代码中设定时区来解决。同时,不要忽视操作系统自身的时区设置,因为它可能会影响到其他非Java程序的时间显示。理解并...

    Java处理时区的注意事项

    这可能会导致问题,特别是当数据在不同时区之间传递时。因此,在启动应用程序时,通常建议显式设置JVM的默认时区,例如:`TimeZone.setDefault(TimeZone.getTimeZone("Asia/Shanghai"))`,这样可以确保系统在处理...

Global site tag (gtag.js) - Google Analytics