|
|
|
Implement support for the new Java 8 temporal Java types (JSR 310).
The initial implementation defines the following Types: * {{org.hibernate.type.DurationType}} - Maps a {{java.time.Duration}} to a SQL BIGINT (Long) representing the duration-in-nanoseconds. * {{org.hibernate.type.InstantType}} - Maps a {{java.time.Instant}} to a SQL TIMESTAMP * {{org.hibernate.type.LocalDateTimeType}} - Maps a {{java.time.LocalDateTime}} to a SQL TIMESTAMP * {{org.hibernate.type.LocalDateType}} - Maps a {{java.time.LocalDate}} to a SQL DATE * {{org.hibernate.type.LocalTimeType}} - Maps a {{java.time.LocalTime}} to a SQL TIME * {{org.hibernate.type.OffsetDateTimeType}} - Maps a {{java.time.OffsetDateTime}} to a SQL TIMESTAMP * {{org.hibernate.type.OffsetTimeType}} - Maps a {{java.time.OffsetTime}} to a SQL TIME * {{org.hibernate.type.ZonedDateTimeType}} - Maps a {{java.time.ZonedDateTime}} to a SQL TIMESTAMP
As this relies on Java 8 and Hibernate still maintains compatibility back to Java 6, a new module {{hibernate-java8}} was added to isolate the Java 8 compatibility to just these classes. We will fold the classes from this module into hibernate-core once we baseline one Java 8.
---- h6. Original request ---- It would be cool to be able to persist the date time types newly introduced in Java 8 in a reasonable way. Currently the values are persisted as blobs effectively.
There are already a [user type implementations|http://jadira.sourceforge.net/usertype.extended/index.html] for the backport project of JSR-310 but they unfortunately don't work with the types from the {{java.time}} package. The support has also been requested in the [user forums|https://forum.hibernate.org/viewtopic.php?f=1&t=1026042].
|
|
|
|