hibernate clé étrangère de la cartographie plusieurs-à-un
J'ai travaillé pendant un certain temps, mais ne peut toujours pas comprendre ce qui ne va pas avec mon code.
Chaque Service dispose de plusieurs profils, mais chaque profil n'a qu'un seul Service.
Service
{
Long service_id; //primary key
... getter/setter
}
Profile
{
Long profile_id; //primary key
Long service_id; //foreign key
... getter and setter
}
dans Profile.hbm.xml. - Je ajouter
< many-to-one name="service_id" class="com.mot.diva.dto.Service" column="SERVICE_ID" cascade="save-update">
< /many-to-one>
Est-ce la bonne façon de carte?
OriginalL'auteur Lily | 2010-03-23
Vous devez vous connecter pour publier un commentaire.
Puis la conception de votre modèle d'objet en conséquence. Lors de l'utilisation d'un outil ORM, vous devez penser d'objets (entités) et les relations entre les entités, et non des id. L'ORM va prendre soin de PK, FK, joint, etc. Ainsi, votre code doit être quelque chose comme ceci:
Et la
Profile.hbm.xml
fichier de mappage:Et dans
Service.hbm.xml
(parce que votre association semble être bi-directionnelle):Vous êtes les bienvenus. iBATIS est plus un mappeur de données (niveau inférieur, plus proche de la base de données), pas vraiment un ORM. Avec un ORM, vous devez penser à des objets, pas des tableaux.
OriginalL'auteur Pascal Thivent