Mockrat diky za radu, ale zrejme porad něco delam spatne:
Serializable id = session.save(myObject);
session.flush();
return (Integer)id;
i
myObject = (MyObject)session.merge(myObject);
session.flush();
return myObject.getId();
stále vraci 0;
l.
_____
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Michal Palička
Sent: Sunday, September 23, 2007 10:33 PM
To: Java
Subject: RE: Hibernate zacatecnik - vraceni vygenerovaneho prim. klice
Dobry den,
metoda "save" vraci nove vygenerovany primarni klic. Staci tedy pouzit:
Serializable id = session.save(myObject);
Obsah objektu, ktery je metode predavan jako parametr, se nemeni.
Novy stav si musite nacist sam.
Urcite reseni prinasi metoda "merge", ktera vraci objekt, jenz obsahuje novy
stav (po ulozeni):
Object myObject = session.merge(myObject);
mp.
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Lukas Adamek | Fayn Telecommunications s.r.o.
Sent: Sunday, September 23, 2007 21:48 PM
To: [email protected]
Subject: Hibernate zacatecnik - vraceni vygenerovaneho prim. klice
Ahoj
Zacinam s Hibernate a mam dotaz.
V DB(MySQL5) mam pro ukladani novych zaznamu na primarni klic definovan
auto-increment.
Chci do DB ulozit novy object a hned po ulozeni si vzit prave ten
vygenerovany primarni klic.
V entite je primarni klic typu int.
Entitu ukladam nasledovne:
session.save(myObject);
session.flush();
myObject.getUserPxid();
Problem je, ze mi entita i po ulozeni jako primarni klic stale vraci '0';
Muzete me alespon nakopnout, kde je problem?
Diky Lukas Adame):