Lo siento, no tengo la respuesta a tu pregunta directa. Sin embargo, puedo sugerir algo que vale la pena considerar que evitará por completo todos los problemas de zona horaria en la base de datos. Si es posible, recomiendo simplemente usar BIGINT
campos para almacenar fechas con Java. Simplemente almacena el long
del número de milisegundos desde la época, p. de System.currentTimeMillis()
o Date.getTime()
.
Luego, la interpretación de la zona horaria para una fecha siempre se administra en Java, lo cual es bueno para usar el número basado en la época. Hace que sea un poco más complicado consultar directamente la base de datos para una fecha fuera de Java, sin embargo, no es demasiado difícil y tiende a valer la pena en mi opinión:
SELECT FROM_UNIXTIME(date_field / 1000) FROM table;