Vor- und Nachteile von Hibernate 4

Was ist neu?


Nach nunmehr sieben Jahren hat das Hibernate-Projekt mit Version 4 ein neues Major Release veröffentlicht. Der Fokus dieser Version liegt auf einem internen Umbau, Aufräumarbeiten und einer kleinen Anzahl neuer, aber dennoch sehr praktischer Features. Dieser Artikel stellt Hibernate 4 auf Basis des aktuell vorliegenden Point Release 4.1 vor und vermittelt Ihnen Tipps und Tricks für die Migration auf die neue Version.

Mit Sicherheit kann man feststellen, dass das Hiber­nate-Team in den eben angesprochenen sieben Jahren alles andere als untätig war. So entstanden in dieser Zeit zahlreiche Zusatzmodule wie die Lucene-Integration Hibernate Search, die Unterstützung für Sharding mit Hibernate Shards, die Referenzimplementierung für Bean Validation mit Hibernate Validator oder das Versionierungsmodul Envers. Im Bereich des Kerns von Hibernate fanden allerdings eher konservative Änderungen statt, die man als „Produktpflege“ bezeichnen kann. An dieser Stelle setzt Hibernate 4 an, indem zahlreiche Interna aufgeräumt und einige neue Features implementiert wurden. Zu den prominenten neuen Funktionen zählt die Unterstützung von Mandantenfähigkeit („Multi-Tenancy Support“) und das in Version 4.1 hinzugekommene API für das Laden einer Entität über natürliche Schlüssel. Eine weitere Neuerung stellt die Service Registry dar, die es Entwicklern ermöglicht, Standarddienste wie zum Beispiel das Handling von JDBC Connections oder von Transaktionen zu ändern oder gänzlich neu zu implementieren. Des Weiteren besteht die Möglichkeit, eigene Dienste in der Service Registry anzumelden.

Zu den internen Änderungen zählt die Trennung zwischen API- und Implementierungsklassen, das Aufräumen veralteter Methoden und Klassen sowie verbessertes Logging mit Unterstützung für Internationalisierung und Message-Codes. Des Weiteren wurde das in Version 3.x optionale Modul Hibernate Annotations in den Kern von Hibernate überführt, sodass diese Abhängigkeit künftig nicht mehr explizit gepflegt werden muss. In diesem Zug wurde mit Version 4.1 der Hibernate-Kern von hibernate-core auf hibernate-orm umbenannt. Dies ist künftig beim Pflegen von Abhängigkeiten mit Maven zu berücksichtigen.

Mandantenunterstützung

Anwendungen, die mehrere Mandanten unterstützen müssen, bewerkstelligen dies in der Regel auf drei unterschiedliche Herangehensweisen. So besteht die Möglichkeit, jeden Mandanten in einer eigenen physischen Datenbankinstanz zu beherbergen. Die nächste Option sind getrennte Schemata innerhalb...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang