ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
271
271
EMPFEHLEN
-
19.05.09 23:32 #1
- Registriert seit
- May 2004
- Beiträge
- 684
Hallo,
ich habe eine Frage zur Funktionsweise von Hibernate. Wenn ich ein Objekt aus der Datenbank hole, dann ist es ja laut Definition ein "attached" Objekt, welches im Hintergrund durch Hibernate mit einer Proxy-Klasse gemanaged wird.
Ist es demnach richtig, dass zunächst gar keine Daten aus der DB von dem Objekt geladen werden, sondern nur, wenn ich z.B. eine Getter-Methode des besagten Objektes verwende?
Beispiel: Ich hole ein Objekt mit der id "1" vom Typ "Auto" aus der Datenbank. Nun ist mein "Auto"-Objekt quasi noch leer. Erst wenn ich nun einen Aufruf der Art "Person besitzer = "auto.getBesitzer();" mache, holt Hibernate tatsächlich die Daten?
Wenn das richtig ist, wie verhält es sich mit "verschachtelten" Verweisen? Was ist z.B., wenn der obige Besitzer noch ein Verweis auf ein Adress-Objekt hat, welches auch in der DB liegt. Würde dann "auto.getBesitzer()" auch gleich die Adresse holen, oder erst der Aufruf an "auto.getBesitzer().getAdresse()"?
Sicherlich kann man das Verhalten irgendwie konfigurieren, was ist in dem Fall der Standard?
Über eine Antwort würde ich mich sehr freuen
Vielen Dank!
-
20.05.09 09:37 #2
Primitive Datentypen liest Hibernate direkt. Also alles was Strings, Integers usw. sind. Für Relationen werden die weiteren Entitäten per default lazy geladen, also erst dann wenn du das Objekt traversierst. Konfigurieren lässt sich das über den FetchType. Setzt du den auf EAGER, erzeugt Hibernate gleich einen Query mit einem Join und holt das referenzierte Objekt gleich mit.
Gruß
OllieIn theory, there is no difference between theory and practice. In practice, there is!
www.olivergierke.de
-
20.05.09 11:32 #3
- Registriert seit
- May 2004
- Beiträge
- 684
Hallo Oliver,
vielen Dank für die Hilfe!
Ähnliche Themen
-
Hibernate UserType nullSafeGet-Methode
Von Foermchen82 im Forum JavaAntworten: 0Letzter Beitrag: 16.10.08, 13:34 -
Hibernate: Mapping-Annotations an Member anstatt an Getter-Methoden?
Von DarthShader im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 9Letzter Beitrag: 23.04.08, 15:26 -
Reflection: Methode ohne Parameter (getter)
Von Vatar im Forum JavaAntworten: 5Letzter Beitrag: 10.04.07, 21:40 -
Problem beim Zugriff auf eine Methode einer Klasse
Von hihachi im Forum C/C++Antworten: 2Letzter Beitrag: 16.01.07, 23:33 -
Wann welche Subdivision-Methode von Meshsmooth
Von Jan-Frederik Stieler im Forum 3D Studio MaxAntworten: 1Letzter Beitrag: 16.04.05, 11:44





Zitieren
Login





