How do I make java.sql.Timestamp UTC time?
本问题已经有最佳答案,请猛点这里访问。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | public static void main(String[] args) { LocalDateTime ldt = LocalDateTime.now(); ZonedDateTime zdt = ZonedDateTime.of(ldt, ZoneId.systemDefault()); Instant instant = Instant.from(zdt); Timestamp timestamp = Timestamp.from(instant); System.out.println(ldt +" "); System.out.println(zdt +" "); System.out.println(instant +" "); System.out.println(timestamp +" "); } |
它打印:
1 2 3 4 5 6 7 | 2017-05-07T18:13:26.969 2017-05-07T18:13:26.969-04:00[America/New_York] 2017-05-07T22:13:26.969Z 2017-05-07 18:13:26.969 |
如何在与
您最好从
第一步是将
1 | ZonedDateTime gmt = zdt.withZoneSameInstant(ZoneId.of("GMT")); |
然后你可以通过
如果要表示"TIMESTAMP WITH TIME ZONE"值,则可能需要使用带有Calendar对象的setTimestamp的特定重载。