繁体   English   中英

独立Java与Tomcat服务器中的日期差异

[英]Date difference in standalone java vs tomcat server

我在将日期转换为UTC时遇到问题,但是我可以在独立的Java程序上运行此日期,但是,在服务器上运行相同的方法时,会得到不同的时间戳。

这是我将UTC中的String日期转换为XMLGregorianCalendar的方法。

public static XMLGregorianCalendar convertDateToXMLGregorianCalendarInUTC(String date, String dateFormat) throws ParseException, DatatypeConfigurationException {
    if (StringUtils.isBlank(date))
        return null;
    TimeZone timeZoneInUTC = TimeZone.getTimeZone("GMT0:00");
    GregorianCalendar gregorianCalendar = new GregorianCalendar(timeZoneInUTC);
    DateFormat dateFormat = new SimpleDateFormat(dateFormat);
    Date dateUtil = null;
    XMLGregorianCalendar xmlGregorianCalendar = null;

    dateUtil = dateFormat.parse(date);
    gregorianCalendar.setTime(dateUtil);        
    xmlGregorianCalendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(gregorianCalendar);

    return xmlGregorianCalendar;
}

使用上述方法,当我在standAlone java prog上运行它时。 通过将日期增加5小时,它将时间戳转换为UTC。

public static void main(String[] args) throws ParseException, DatatypeConfigurationException { 

    System.out.println("DateUtil xmlGC in UTC: "+DateUtil.convertDateToXMLGregorianCalendarInUTC("03/06/2017 05:47:37", "MM/dd/yyyy HH:mm:ss"));

}

输出DateUtil xmlGC in UTC: 2017-03-06T10:47:37.000Z.

但是,在tomcat上使用相同的方法-同一台计算机上的应用程序服务器时,它不会将日期转换为UTC。 我在这里想念什么吗,

有人可以帮我吗 提前致谢。

设置Tomcat时区-Duser.timezone=GMT+05

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM