Ja som mal taky isty problem, zacal som pouzivat Hibernate, nasiel som si Hibernate tools, naimportoval existujucu a databazu a bol som spokojny, kym som nezistil, ze mi to negeneruje id-cka :-)  podla napriklad tejto http://www.roseindia.net/hibernate/hibernateidgeneratorelement.shtml stranky:
<generator class="assigned"/>
In this case <generator> element do not generate the primary key and it is required to set the primary key value before calling save() method
cize malo byttam byt identity.

ya

Adámek Lukáš  wrote / napísal(a):

Cast mapovaciho XML vypada takto:

       

<id name="userPxid" type="int">

            <column name="user_pxid" />

            <generator class="assigned" />

</id>

 

Jen podotykam, ze takto mi to vygenerovali Hibernate-tools a jako zacatecnik jsem nemel duvod neverit.

 

l.

 


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Ján Valkovič
Sent: Monday, September 24, 2007 9:24 AM
To: Java
Subject: Re: Hibernate zacatecnik - vraceni vygenerovaneho prim. klice

 

Zdravim,
ako mate nastaveny stlpec 'id'? je to nieco taketo?
<id name="id" type="int">
    <column name="ID" />
    <generator class="identity" />
</id>

ya

Lukas Adamek | Fayn Telecommunications s.r.o.  wrote / napísal(a):

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):

Odpovedet emailem