2011-01-15 15 views

Antwort

6

Typischerweise steigt Version umfasst den gleichen

Dank herausfinden kann, mehr Funktionen und Fehlerbehebungen Hier ist der Migrationsleitfaden für den Winterschlaf 2-> 3, der Ihnen eine Idee geben soll.

http://community.jboss.org/wiki/HibernateCoreMigrationGuide30

Sie werden sehen, dass sie Dinge tat wie alle Ausnahmen unkontrolliert machen, fügte einige Methoden an Orten, einige Methoden an Orten, veraltet, und so weiter.

5

Einige Schlüsselpunkte 2.x V Hibernate 3.x Hibernate:

Hibernet2.x Version steigt auf Hibernet3.x, ist, dass mehr Features und Bugfixes enthalten. Hibernate 3.0 ist nicht mit Hibernate 2.1 kompatibel. Die in Hibernet3.0 vorgenommenen Änderungen wurden sorgfältig auf ausgelegt, um eine einfache Migration von Code und Metadaten zu ermöglichen. Es ist möglich, Hibernate 2.x und Hibernate 3.x Seite von Seite in der gleichen Anwendung auszuführen.
von Änderungen Einige in Hibernate3.x gemacht im Vergleich zu Hibernet2.x:

API-Änderungen:

Die Struktur Hibernate3 Paket wird bei org.hibernate verwurzelt
statt net.sf.hibernate.This Umbenennung war getan, um Hibernate2 und Hibernate3 nebeneinander in der gleichen Anwendung laufen zu lassen. Bestimmte Schnittstellen, die in Hibernate3 veraltet wurden, wurden in das org.hibernate.classic-Paket verschoben. HibernateException und alle anderen Hibernate-Ausnahmen sind in Hibernate3 als ungeprüfte Laufzeitausnahmen geändert. Verglichen mit Hibernate2 bietet Hibernate3 die Schnittstelle ParameterizedType, um eine bessere Wiederverwendbarkeit von Benutzertypimplementierungen zu ermöglichen. Hibernate3.x umschließt Blob- und Clob-Instanzen, um Klassen mit einer Eigenschaft vom Typ Blob oder Clob loslösen, serialisieren, deserialisieren und an merge() übergeben zu können. Hibernate2.x nicht unterstützt diese Funktion. Metadatenänderungen:

In Hibernate2.x empfiehlt es sich, fast alle Klassen und Sammlungen mit lazy = "true" zuzuordnen, das ist in Hibernate3.x die Standardfunktion. In Hibernate2.x-Anwendungen müssen lazy = "false" explizit für alle nicht-faulen Klassen- und Auflistungszuordnungen angegeben werden. In hiberet 3.x Das Outer-Join-Attribut ist veraltet. Verwenden Sie fetch = "join" und fetch = "select" anstelle von outer-join = "true" und outer-join = "false". Das Element ist semi-deprecated und wird jetzt in hibernate3.x bevorzugt. wird bevorzugt.
wird bevorzugt. DTD-Referenz in hbm XML-Dateien wird in Hibernate 3.x im Vergleich zu Hibernate2.x geändert.

Query Language Änderungen:

Hibernate3 kommt mit einem brandneuen, ANTLR-basierten
HQL/SQL-Abfrage Übersetzer. Der Hibernate 2.1 Abfrage
Parser ist noch verfügbar. Der Abfrageparser kann ausgewählt werden, indem die Hibernate
Eigenschaft hibernate.query.factory_class festgelegt wird.

Verwandte Themen