Hibernate 5.2 baut voll auf Java 8
Das quelloffene Java-Persistenz-Framework arbeitet bereits seit Version 5.0 mit Java 8 zusammen. Version 5.2 benötigt im Gegensatz zu den Vorgängern die Java-8-Runtime und soll Anwender auf das kommende Hibernate 6 vorbereiten.
Hibernate ist ein Persistenz-Framework für Java, das Objekte mit Attributen und Methoden in einer relationalen Datenbank speichert. Der inzwischen offizielle Name Hibernate ORM beschreibt somit die Arbeitsweise des objektrelationalen Mappers. Die nun veröffentlichte Version 5.2 baut voll auf Java 8 und benötigt die entsprechende Runtime. Zwar unterstützt das Framework bereits seit dem im Sommer 2015 erschienenen Release 5.0 Java 8, aber der Einsatz war bisher optional.
Von separaten Modulen in den Kern
Das seinerzeit verwendete Modul hibernate-java8 verschwindet damit und geht funktional in hibernate-core über. Dadurch können Entwickler nun die native Date and Time API von Java 8 verwenden und mit java.util.stream.Stream Datenströme als Abfrageergebnisse nutzen. Auch die Container-Klasse java.util.Optional, die den sauberen Umgang mit null ermöglicht. kann zum Einsatz kommen.
Darüber hinaus haben die Macher die Möglichkeit integriert, JCache-konforme Implementierungen als Second-Level-Cache zu verwenden. Auch der hibernate-entitymanager ist nun Geschichte, da der JPA-Support (Java Persistence API) nun ebenfalls Bestandteil von hibernate-core ist.
Hilfe beim Umstieg
Um Anwendern den Umstieg zu erleichtern, hat das Team einen Migration Guide auf GitHub veröffentlicht. Er nennt die Vorbereitung auf Version 6.0 als Hauptgrund für die Integration der separaten Java-8-Module in den Kern. Version 5.2 soll den Nutzern den Migrationspfad zu 6.0 aufzeigen, dabei aber die alten Aufrufe und Erwartungen weitgehend ermöglichen.
Weitere Details zu Version 5.2 finden sich im entsprechenden Blog-Beitrag. Das unter LGPL v2.1 veröffentlichte Framework steht auf der Download-Seite zum Herunterladen bereit. (rme)