Hallo,
ich arbeite nun schon seit ca. zwei Monaten mit Hibernate, aber habe noch eine generelle Verständnisfrage die ich gerne geklärt hätte.
Um einen Tupel in ein Objekt zu laden öffne ich eine Session die ich auch direkt nach dem Laden wieder schließe. Die Bearbeitung des Objekts im Programm erfolgt also ohne aktive Session.
Möchte ich nun das Objekt wieder in die Datenbank schreiben wird die Session erneut geöffnet und ein SaveOrUpdate bzw. nun der Merge ausgeführt. Danach gleich wieder ein session.close().
Die Frage die sich hier mit stellt ist folgende: Ist dadruch sichergestellt das Hibernate nicht sofort beim Ändern einer Eigenschaft des Objekts die Daten wieder in die Datenbank schreibt?
Normalerweise ja, denn die Session ist ja dicht, aber ich bin mir unsicher, da wenn ich via der XML Konfiguration die SQL Anweisungen auf der Console ausgebe kommen des öfteren mir unerklärliche UPDATE Anweisungen vor.
Ich möchte aber absolut sicher gehen das nur ich mit meinem Code entscheide wann und was in die Datenbank geschrieben wird!
Wie verhält sich Hibernate nun genau? Gib es einen schalter wo ich ein eventuelles "Auto-Update" auschschalten kann?
Mein Buch "A Developers Notebook" konnte mir auch nicht wirklich helfen und im Inet habe ich auch keine besseren Informationen gefunden :(
Danke schonmal für jede Antwort :)
Gruß,
Michael
|