Saltar al contenido

[2021] Java: tiempo de Unix / tiempo de época: ¿representación del bloque de fecha o de tiempo? {DH}

octubre 3, 2021

Aparentemente, esta fue una decisión de diseño desafortunada para elegir el tipo de datos para representar un momento, un punto específico en la línea de tiempo (TIMESTAMP WITH TIME ZONE en SQL estándar) y abusar de él para ahorrar un lapso de tiempo sin agregar a la línea de tiempo.

Dado el formato del texto de muestra, sospecho que los datos podrían almacenarse en una columna de tipo datetime. Verifique su declaración sobre la columna VARCHAR (o si realmente lo es VARCHAR, lea hasta el final de esta respuesta).

Internamente, este tipo de datos probablemente almacena el número de milisegundos o microsegundos desde la referencia de época del primer momento de 1970 UTC. Entonces, nuestro objetivo es alcanzar ese número.

Retira el pseudo-momento como un OffsetDateTime Objeto con un controlador JDBC 4.2 o superior.

OffsetDateTime odt = myResultSet.getObject( … , OffsetDateTime.class ) ; 

Cuando los segundos son importantes para ti y tú no …

leer mas:
[2021] Java: tiempo de Unix / tiempo de época: ¿representación del bloque de fecha o de tiempo? {DH}