Scusa non ho la risposta alla tua domanda diretta. Tuttavia, posso suggerire qualcosa che vale la pena considerare che eviterà completamente tutti i problemi di fuso orario nel database. Se possibile ti consiglio semplicemente di usare BIGINT
campi per la memorizzazione delle date con Java. Devi solo memorizzare il long
del numero di millisecondi dall'epoca, ad es. da System.currentTimeMillis()
o Date.getTime()
.
Quindi l'interpretazione del fuso orario per una data è sempre gestita in Java, che è bravo a usare il numero basato sull'epoca. Rende un po' più complicato interrogare direttamente il database per una data al di fuori di Java, tuttavia non è troppo difficile e tende a valerne la pena IMO:
SELECT FROM_UNIXTIME(date_field / 1000) FROM table;