ich hab ein kleines verständnisproblem bei Hibernate...
Ich kann ja verstehen das folgender aufruf in die Binsen geht:
Code:
Session session = HibernateSessionFactory.currentSession();
Transaction tx = session.beginTransaction();
Uebung test = new Uebung();
Uebung test2 = new Uebung();
session.load(test, new Integer(id));
session.load(test2, new Integer(id));
Aber wie kann ich mir dann eine Kopie von einem Objekt laden ?
Angenommen ich möchte 2 mal die gleiche Tabelle in 2 unterschiedlichen Fenstern anzeigen. Dann müsste ich ja die Daten vorher laden und mir eine Kopie von den Objekten erstellen.
Kurzform:
Gibt es in Hibernate eine Möglichkeit bereits geladene Objekte nochmal zu laden (zu kopieren) ohne das das ganze in einer org.hibernate.NonUniqueObjectException endet ?
Wäre für ein paar Ideen dankbar sonst wandert Hibernate in die Tonne und es gibt wieder die guten alten ResultSets.
...
Aber wie kann ich mir dann eine Kopie von einem Objekt laden ?
Angenommen ich möchte 2 mal die gleiche Tabelle in 2 unterschiedlichen Fenstern anzeigen. Dann müsste ich ja die Daten vorher laden und mir eine Kopie von den Objekten erstellen.
Kurzform:
Gibt es in Hibernate eine Möglichkeit bereits geladene Objekte nochmal zu laden (zu kopieren) ohne das das ganze in einer org.hibernate.NonUniqueObjectException endet ?
Wäre für ein paar Ideen dankbar sonst wandert Hibernate in die Tonne und es gibt wieder die guten alten ResultSets.
Mir scheint Du hast die Idee von Hibernate und anderen Persistenz Frameworks nicht verstanden.
Start-Seite von Hibernate:
Hibernate is a powerful, high performance object/relational persistence and query service. Hibernate lets you develop persistent classes following object-oriented idiom -....
Hibernate und andere Persistenz Frameworks sorgen dafür, dass das was in der Datenbank steht auch mit dem übereinstimmt was im Speicher steht.
Sprich es darf keine Kopien geben, da ja sonst unterschiede zwischen den beiden Kopien entstehen können. Das Resultat wäre dann, dass das Framework nicht mehr garantieren kann, dass das Objekt auch so in der DB steht.
Aber nun zu Deinem Problem:
Warum benötigst Du den eine Kopie? im Anderen Fenster können doch ruhig die gleichen Daten genutzt werden. Das wäre doch sogar gut, da damit ja auch Speicher gespart wird....
Abgesehen davon sind die Resultsets nicht wirklich eine Alternative bzgl. der Ersparnis die Hibernate und andere bieten...
Hi,
Mir scheint Du hast die Idee von Hibernate und anderen Persistenz Frameworks nicht verstanden.
Hibernate und andere Persistenz Frameworks sorgen dafür, dass das was in der Datenbank steht auch mit dem übereinstimmt was im Speicher steht.
Sprich es darf keine Kopien geben, da ja sonst unterschiede zwischen den beiden Kopien entstehen können. Das Resultat wäre dann, dass das Framework nicht mehr garantieren kann, dass das Objekt auch so in der DB steht.
Ok wenn man es aus dem Blickwinkel betrachtet. laube dann sollte ich doch nochmal ein wenig Doku lesen.
Warum benötigst Du den eine Kopie? im Anderen Fenster können doch ruhig die gleichen Daten genutzt werden. Das wäre doch sogar gut, da damit ja auch Speicher gespart wird....
Geb ich dir recht. Grund in meiner "Verzwfeileung" letzte nacht war das ich mir normalerweise die Daten dort aus der Datenbank organisiere wo ich sie brauche und nicht lange im Speicher vorhalte.
Abgesehen davon sind die Resultsets nicht wirklich eine Alternative bzgl. der Ersparnis die Hibernate und andere bieten...