J'ai une crampe de cerveau essayant de comprendre cette cartographie.Hibernate self-table avec le mappage de table de jointure
Voici mon db:
CUSTOMER CUSTOMERFAMILY CUSTOMER
PK SITE_ID -----------PRIMARYSITE_ID -- PK SITE_ID
MEMBERSITE_ID -------------|
Cela crée une relation où un client ne peut avoir qu'un seul parent (car il y a une contrainte unique sur CUSTOMERFAMILY.MEMBERSITE_ID) et un client peut avoir de nombreux enfants. (c'est-à-dire que Pepsi Co. possède FritoLay, Gatorade, etc., donc PepsiCo aura plusieurs enfants mais Gatorade n'a qu'un parent: PepsiCo).
J'essaie de mapper une propriété dans mon objet client appelé parent, je l'ai essayé beaucoup de combinaisons de cette idée sans succès:
<join table="CUSTOMERFAMILY" inverse="false">
<key column="MEMBERSITE_ID" unique="true" />
<many-to-one name="parent" column="SITE_ID" not-null="true"><formula>PRIMARYSITE_ID</formula></many-to-one>
</join>
Toutes les idées ??
Merci d'avance.
(S'il vous plaît ne demandez pas pourquoi la DB est conçu de cette façon ... l'ancien système, ce n'était pas moi!))
Excellent! Merci! Cela a fonctionné, maintenant, si je veux utiliser une requête nommée pour charger un client, j'obtiens une erreur PRIMARYSITE_ID: identificateur invalide –