java new Date() 与系统时间相差16个小时

最近遇到个奇葩的神坑,通过Date date = new Date();获取时间戳以秒为单位本地测试完好(jdk1.8,时区为标准的东八区),但是一上生产取得时间戳就与系统相差16个小时,生产时区为西八区然后日期时间完全改为跟东八区北京时间一致(jdk1.5);麻烦哪位大神老师解解惑,急等啊。。

public static int getSecondTimestampTwo(new Date()) {
    log.info("UserAuthorization_Date2===" + date);
    if (null == date) {
        return 0;
    }
    String timestamp = String.valueOf(date.getTime() / 1000);
    log.info("UserAuthorization_Date_timestamp===" + timestamp);
    return Integer.valueOf(timestamp);
}

是不是jdk1.5 默认时区是东八区的原因啊,new Date();因为要用东八区的而现在系统时西八区所以会去加上16个小时啊??
比如现在系统时 2018-12-14 22:49:00 然后取出来就是 2018-12-15 18:49:00这样子啊???

时间戳使用的是UTC,也就是当地时间和时区经过换算后,和0时区统一的时间。对于中国来说,换算成UTC需要-8小时。(也就是+16小时再减1天)