Hibernate Books

All times are UTC - 5 hours [ DST ]



Post new topic Reply to topic  [ 10 posts ] 
Author Message
 Post subject: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Wed Apr 06, 2011 10:24 am 
Newbie

Joined: Wed Apr 06, 2011 10:16 am
Posts: 5
bonjour,

je cherche à faire une relation one-to-one entre deux objets : Rdv et RdvInfo
dans mon Rdv, j'ai un lien vers mon RdvInfo
mais dans ma base, le lien entre les deux est fait par une colonne idRdv qui se trouve dans la table RdvInfo

exemple :

objet Rdv {
id
rdvInfo
}

objet RdvInfo {
id
}

table RDV {
colonne : id
}

table RDV_INFO {
colonne : id
colonne : id_rdv
}

dans mon Rdv.hbm, que dois-je mettre pour faire le lien avec le rdvInfo ?


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Wed Apr 06, 2011 11:55 am 
Regular
Regular

Joined: Fri Jan 28, 2011 11:44 am
Posts: 117
Tu as toutes les infos nécessaires ici:

http://docs.jboss.org/hibernate/core/3. ... n-onetoone


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 5:43 am 
Newbie

Joined: Wed Apr 06, 2011 10:16 am
Posts: 5
merci, mais les infos nécessaires sont plus ou moins absconces...

je ne vois pas d'équivalent au column

pour faire dans mon rdv.hbm.xml un truc de ce style :

<one-to-one name="rdvInfo"
lazy="false"
class="fr.blablabla.modele.RdvInfo"
column="idRdv"
cascade="all-delete"
/>


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 5:47 am 
Regular
Regular

Joined: Fri Jan 28, 2011 11:44 am
Posts: 117
Dans ton cas tu dois utiliser un many-to-one avec unique=true :

Quote:
<many-to-one name="person" class="Person" column="PERSON_ID" unique="true"/>


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 8:50 am 
Newbie

Joined: Wed Apr 06, 2011 10:16 am
Posts: 5
pour reprendre l'exemple que tu donnes,
on se trouve avec un objet Employee qui contient un objet Person
et une table Employee qui contient une colonne PERSON_ID

mon cas est différent :
j'ai bien un objet Employee qui contient un objet Person,
mais ma table Employee ne contient pas de colonne PERSON_ID
c'est la table Person qui contient un EMPLOYEE_ID.


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 8:54 am 
Regular
Regular

Joined: Fri Jan 28, 2011 11:44 am
Posts: 117
Dans ce cas fait une relation bidirectionnelle:

Code:
Person:
<many-to-one name="employee" class="Employee" column="EMPLOYEE_ID" unique="true"/>

Employee
<one-to-one name="person" class="Person" property-ref="employee"/>


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 10:11 am 
Newbie

Joined: Wed Apr 06, 2011 10:16 am
Posts: 5
et si je ne veux pas faire de bidirectionnel ?


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 10:17 am 
Regular
Regular

Joined: Fri Jan 28, 2011 11:44 am
Posts: 117
je ne pense pas que ce soit possible ...
mais en quoi c'est gênant de faire du bidirectionnel?


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Thu Apr 07, 2011 10:53 am 
Newbie

Joined: Wed Apr 06, 2011 10:16 am
Posts: 5
disons, que fonctionnellement, je n'ai pas besoin de bidirectionnel.


Top
 Profile  
 
 Post subject: Re: one-to-one avec foreign key dans l'objet lié objet
PostPosted: Fri Jan 25, 2013 2:09 am 
Newbie

Joined: Thu Jan 24, 2013 6:23 am
Posts: 3
1- si tu veux gérer toutes les possibilités, il te faudra un UserType
2- si ton application est la seule client de ta bdd, alors tu peux estimer que tu n'auras qu'un doublet possible TRUE_FALSE
3- tu n'as pas répondu a ma précédente question, annotation ou fichiers de mapping? :-)








__________________________________________________________
www.bicgate.com


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.