很多时候在用new Date() 方法得到的时间对象与本机的时间是不符的。 我发现这个问题都是由于jvm时区设置的问题。
用程序:
final Properties p = System.getProperties();
final Enumeration e = p.keys();
while (e.hasMoreElements())
{
final String prt = (String) e.nextElement();
final String prtvalue = System.getProperty(prt);
System.out.println(prt + ":" + prtvalue);
}
来查看打印出的控制台的内容
。。。。。。
user.timezone:America/New_York ----》说明时区有问题
java.awt.printerjob:sun.print.PSPrinterJob
。。。。。。
还可以做如下测试:
System.out.println(TimeZone.getDefault()); //输出当前默认时区
final TimeZone zone = TimeZone.getTimeZone("GMT+8"); //获取中国时区
TimeZone.setDefault(zone); //设置时区
System.out.println(TimeZone.getDefault()); //输出验证
我的机器是linux jvm 是读取 /etc/sysconfig/clock 文件来确定时区。 如果没有可以添加一个。
打开后发现clock文件内容:
ZONE="America/New_York" --->修改为: "Asia/Shanghai"
UTC=false
ARC=false
ZONE -- 时区
UTC -- 表明时钟设置为UTC。
ARC -- 仅用于alpha表明使用ARC。
这样就可以解决该问题
也可以修改系统注册表来修改系统时区:
注册表修改方法在附件中
分享到:
相关推荐
KETTLE 时间与系统时间不一致的解决方案 KETTLE 是一种数据集成工具,它能够从各种数据源中提取数据,并将其转换为目标系统所需的格式。在使用 KETTLE 时,可能会遇到时间与系统时间不一致的问题,本文将介绍该问题...
本文将详细介绍如何解决Java与C#中MD5哈希值不一致的问题,并提供相应的代码示例。 #### 一、MD5算法简介 MD5(Message-Digest Algorithm 5)是RSA数据安全公司设计并发布的一种散列函数,它能够接收任意长度的...
在Java编程中,获取系统时间的操作通常是通过`java.util.Date`类或`java.time`包下的类来实现的。然而,标题"java 获取系统时间错误,少了8小时"表明开发者在尝试获取系统时间时遇到了一个时区问题。这通常与Java中...
标题“WIN7 JAVA获取时间有问题”指出的问题可能涉及到在Windows 7操作系统中使用Java编程语言时,遇到时间处理的异常或不准确的情况。这可能是由于Java的时区设置、系统时间与程序之间的交互,或者是Java运行环境...
4. **纯Java解决方案**:如果你不想引入额外的依赖,也可以考虑使用Java的`java.nio`包,通过BufferedReader读取文件的元数据,但这通常会更复杂且不推荐,因为不同格式的视频文件可能需要不同的解析方式。...
不过,这并不意味着在Java中无法获取文件的创建时间,我们可以通过一些变通的方法来实现这个功能。 首先,我们需要了解Java中的`java.io.File`类,这是处理文件操作的基础。`File`类提供了许多方法,如`last...
在Java编程中,`new Date()` 和 `Calendar.getInstance().getTime()` 都是获取当前系统时间的方法,但有时可能会出现获取到的时间与预期不符的情况。这种问题通常与时区设置、系统时间、Java运行环境以及代码逻辑...
- **synchronized关键字**:Java中的synchronized提供了一种内置锁机制,它可以保证同一时间只有一个线程访问共享资源,避免数据不一致。synchronized可以修饰方法或代码块,前者作用于整个方法,后者则只锁定特定...
### Java并发编程与高并发解决方案知识点总结 #### 一、并发与高并发基本概念 ##### 1.1 并发 - **定义**: 指一个程序在同一时刻拥有两个或更多的线程,这些线程可以在单核或多核处理器上运行。 - **单核处理器上...
4. **自定义解决方案**:如果性能需求极高,可以尝试使用JNI(Java Native Interface)来调用操作系统原生的高效时间获取函数,例如Linux上的`gettimeofday`或Windows上的`QueryPerformanceCounter`。这需要编写C/...
本文将基于文档《Java并发编程与高并发解决方案-学习笔记***.pdf》中提供的内容,来详细阐述并发编程和高并发的基本概念、CPU多级缓存与缓存一致性、以及Java内存模型。 ### 并发与高并发概念 在现代多线程编程中...
"Java并发编程与高并发解决方案"这一主题涵盖了多个重要的技术概念和实践策略,旨在提高系统处理大规模并发请求的能力,保证服务的稳定性和性能。 首先,线程池(threadpool)是Java并发编程中的核心组件。通过复用...
本系统采用Java语言进行开发,充分利用了Java的强大特性和丰富的生态系统,以实现稳定、安全、可扩展的考勤管理解决方案。 **一、Java技术基础** Java是一种广泛使用的面向对象的编程语言,具有“一次编写,到处...
基于Apache Tomcat的一站式Java应用服务器解决方案,包括系统整体架构设计以及监控运维管理平台Open Tomcat的构建。Open Tomcat通过松散耦合的方式对各应用节点进行管理,并集成了开源监控工具PsiProbe,同时为了...
四、技术挑战与解决方案 在开发过程中,可能会遇到如并发控制、数据一致性、用户体验优化等挑战。例如,为了处理高并发查询,可能需要优化SQL语句,使用索引,甚至采用缓存策略。对于数据一致性,事务管理是关键,...
在这种场景下,Java Native Access (JNA) 库为我们提供了一个无需编写C语言桥接代码就能调用系统原生库(如动态链接库DLL在Windows上)的解决方案。 本文将详细介绍如何使用Java通过JNA调用系统API,以Windows系统...
【Java架构咨询与电子商务解决方案】 Java作为一种强大的应用开发平台,自从1995年发布以来,已经在全球范围内得到了广泛的应用。它已经成为众多大型企业信息技术部门的核心IT策略,尤其是在电子商务领域。汇丰银行...
总的来说,基于Java+MySQL的宠物管理系统是一个综合运用多种技术,旨在提高宠物服务行业的效率和客户满意度的软件解决方案。开发者需要具备扎实的Java编程基础,熟悉MySQL数据库操作,同时了解Web开发的相关知识,...
综上所述,JAVA在线考试系统是一个集成了多种技术的Web应用,其目标是为教育环境提供一个高效、便捷的在线考试解决方案。开发者在设计时充分考虑了用户体验、数据管理和系统安全,以满足现代教育的需求。
标题 "JAVA在IE中查看系统时间-in IE View system time.zip" 暗示了这个压缩包可能包含一个Java应用程序或脚本,其功能是通过Internet Explorer(IE)浏览器展示计算机的系统时间。这个应用可能是为了方便用户在...