Hi Leute!
Mit Einführung von JEE 5 gibt es ja eine eigene JavaPersistenceApi von SUN. Laut dem offiziellen Tutorial von SUN zu JEE 5 braucht man Hibernate (oder eine andere Implementierung) nicht mehr. Im diesem Tutorial gibt es ein Beispiel, wie man mit der JPA Persistenzobjekte erzeugen und damit arbeiten kann. Das JavaBuch von Guido Krüger sagt aber, dass man eine Implementierung wie Hibernate benötigt und schreibt auch das Beispiel mit Hibernate.
Jetzt meine Frage: kann ich mit der JPA auf Hibernate verzichten oder nicht? Denn wenn ich nicht darauf verzichten kann, wo liegt dann der eigentliche Vorteil der JPA?
Bisher sehe ich es so: ohne die JPA ist Hibernate allein für Persistenz zuständig. Mit Hilfe der JPA wird Hibernate aber einfacher (siehe Annotations), da die JPA ja auf Hibernate aufbaut. Dann stellt sich mir aber die Frage, wozu JPA verwenden und die Klassen umschreiben, wenn sich eigentlich nichts ändert? Würde allerdings Hibernate wegfallen, können die Projekte ohne Hibernate ausgeliefert werden, wodurch sie schlanker werden und ich muss mir keine Sorgen machen, dass die richtige Hibernateversion auf dem Zielsystem vorhanden ist.
Danke schonmal & viele Grüße,
Martin
Mit Einführung von JEE 5 gibt es ja eine eigene JavaPersistenceApi von SUN. Laut dem offiziellen Tutorial von SUN zu JEE 5 braucht man Hibernate (oder eine andere Implementierung) nicht mehr. Im diesem Tutorial gibt es ein Beispiel, wie man mit der JPA Persistenzobjekte erzeugen und damit arbeiten kann. Das JavaBuch von Guido Krüger sagt aber, dass man eine Implementierung wie Hibernate benötigt und schreibt auch das Beispiel mit Hibernate.
Jetzt meine Frage: kann ich mit der JPA auf Hibernate verzichten oder nicht? Denn wenn ich nicht darauf verzichten kann, wo liegt dann der eigentliche Vorteil der JPA?
Bisher sehe ich es so: ohne die JPA ist Hibernate allein für Persistenz zuständig. Mit Hilfe der JPA wird Hibernate aber einfacher (siehe Annotations), da die JPA ja auf Hibernate aufbaut. Dann stellt sich mir aber die Frage, wozu JPA verwenden und die Klassen umschreiben, wenn sich eigentlich nichts ändert? Würde allerdings Hibernate wegfallen, können die Projekte ohne Hibernate ausgeliefert werden, wodurch sie schlanker werden und ich muss mir keine Sorgen machen, dass die richtige Hibernateversion auf dem Zielsystem vorhanden ist.
Danke schonmal & viele Grüße,
Martin