2010-09-16 7 views
0

J'ai des difficultés à créer un modèle pour deux entités qui soit sain d'esprit dans Hibernate et dans la base de données. Toute aide est appréciée.Modélisation de l'héritage Hibernate

Une entité et une table d'entreprise existent, qui fournissent à la fois un nom d'entreprise et un "code d'entreprise". Le code de l'entreprise doit être unique.

La société peut agir en tant que 2 entités, clients ou partenaires différents.

Nous aimerions avoir des entités client et partenaire distinctes.

Les facteurs aggravants que je vois sont

1) Les entreprises peuvent être à la fois un client et un partenaire.

2) La société doit rester unique.

3) Nous voulons être en mesure de créer de nouveaux clients et partenaires en passant par company_code en tant que paramètre. par exemple. nouveau client ("WALMART") et nouveau partenaire ("WALMART") devant correspondre à la même société.

L'héritage à tables uniques et à tables multiples ne fonctionne pas car ils ne mappent pas un marchand et un client avec le même code d'entreprise à une seule société.

Merci à tous.

Répondre

2

Pourriez-vous créer une table d'entreprise avec laquelle les entités partenaire et client ont un lien plusieurs-à-un? Cela vous permettrait de définir l'entreprise sur le partenaire et le client comme un descripteur (plus d'un has-a, bien qu'il soit plus proche d'une frappe) sans avoir besoin d'héritage.