在不更改机器时区的情况下改变一个特定应用程序的时区(多种方法):
1、
TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai");
TimeZone.setDefault(tz);
2、
java -Duser.timezone=UTC TimeZoneTip
java -Duser.timezone=Asia/Shanghai
3、
针对tomcat,修改其catalina.bat 对应set JAVA_OPTS = -Duser.timezone=Asia/Shanghai
新增 -Duser.timezone=Asia/Shanghai 这句既可 。
4、代码中
Date utilDate = new java.util.Date();
SimpleDateFormat myFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
TimeZone timeZoneChina = TimeZone.getTimeZone("Asia/Shanghai");//获取中国的时区
myFmt.setTimeZone(timeZoneChina);//设置系统时区
return myFmt.format(utilDate);
本文介绍了在不更改系统时区的前提下,通过四种不同方法为特定应用程序设置时区的方法,包括利用Java代码直接设置、通过JVM参数设定、针对Tomcat环境配置及在代码中指定日期格式与时区。
545

被折叠的 条评论
为什么被折叠?



