0

我有一个小型 java 应用程序,可将日期导入 mysql 数据库我使用此代码转换时间:

Calendar cal = Calendar.getInstance();
cal.set(2012, 2, 30, 0, 0); // for 2012-03-30 00:00
unixtime = cal.getTimeInMillis();
unixtime = unixtime / 1000;
System.out.println(unixtime); // => 1333062005

如果我运行:

SELECT FROM_UNIXTIME(1333062005) AS T1;

我得到:

2012-03-30 01:00:05

我认为 5 秒是一些舍入差异,因为毫秒到秒。但是为什么它是 01:00 而不是 00:00 呢?

任何想法?

4

1 回答 1

0

Mysql 的时区与 Java 不同。请将您的时区设置为:

SET time_zone = 'America/New_York';
于 2013-02-08T10:44:17.603 回答