getTimestamp () führt die Zeitzonen-Konvertierung im MySQL-JDBC-Connector zweimal durch?
Ich habe eine Spalte vom TypDATETIME
mit einem Wert von2012-05-07 19:59:12
in der MySQL-Datenbank. Ich versuche, diesen Wert aus der Datenbank abzurufen, unter der Annahme, dass er in der UTC-Zeitzone gespeichert ist:
<code>Calendar cal = Calendar.getInstance(new SimpleTimeZone(0, "UTC")); Date date = resultSet.getTimestamp(1, cal); System.out.println(date); </code>
Es gibt aus (CEST
ist meine lokale Zeitzone (2 Stunden vor UTC):
<code>Mon May 07 23:59:12 CEST 2012 </code>
Erwarteter Wert ist:
<code>Mon May 07 21:59:12 CEST 2012 </code>
Ich verwende diese drei Parameter in der JDBC-URL (Europe/Berlin
ist das gleiche wieCEST
):
<code>..&useGmtMillisForDatetimes=true&useTimezone=true&serverTimezone=Europe/Berlin </code>
Liegt es an meinem Defekt oder sollte etwas zusätzlich im JDBC-Treiber konfiguriert werden? Ich benutzemysql:mysql-connector-java:5.1.20
.