Search code examples
javasqljava-8java-timezoneddatetime

Convert java.sql.Timestamp to Java 8 ZonedDateTime?


Migrating Joda time to Java 8

Joda:

UserObject user = new UserObject()
user.setCreatedAt(new DateTime(rs.getTimestamp("columnName")));`

Migrating to Java 8

This is my code; it does compile; I am doubtful if it works:

ZonedDateTime.ofInstant(rs.getTimestamp("columnName").toLocalDateTime().toInstant(ZoneOffset.UTC),ZoneId.of("UTC")));

In some cases, the date is wrong. Any advice?


Solution

  • This seems to work:-

    ZonedDateTime.ofInstant(rs.getTimestamp("columnname").toInstant(), ZoneId.of("UTC"))