[Hibernate 3.x] 2 mapping à écrire qui me pose problème
Salut,
J'ai deux mappings à écrire qui me pose probleme et je ne connais pas la syntaxe pour m'en sortir.
1er cas :
table languages
langCode
langName
association vers des utilisateurs à travers une table user_env mais sur plusieurs champs différents
table user_env
userCode
affichageLang
editionLang
applicationLang
la langue d'affichage, d'édition ou de l'application peut être différente mais au final je vais bien chercher tout les utilisateurs associés à une langue dans un Set.
Pour l'instant je ne vois pas autrement qu'en faisant 3 set différents :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <set name="usersAffPreferences" table="USER_ENV" >
<key column="AFF_LANG" />
<many-to-many column="USER_CODE" class="model.Users" />
</set>
<set name="usersEdiPreferences" table="USER_ENV" >
<key column="EDI_LANG" />
<many-to-many column="USER_CODE" class="model.Users" />
</set>
<set name="usersWiPreferences" table="USER_ENV" >
<key column="WI_LANG" />
<many-to-many column="USER_CODE" class="model.Users" />
</set> |
Mais bon c'est pas terrible, j'ai pas besoin de 3 sets puisque les données sont identiques a l'intérieur.
Je ne vois pas comment faire une jointure sur 3 champs plutot qu'un seul.
2eme cas :
ma table langue peut aussi être associé a des paramétres d'environnement dans une table qui se veut générique
table env_param
envId
paramValue
paramName
Du coup cette fois je veux un set qui soit capable de prendre tout les environnements, dont le paramValue = langCode et paramName = AFF_LANG ou EDI_LANG ou WI_LANG
Cette fois j'ai un seul champ de liaison mais 3 conditions. J'avais l'impression que "formula" dans les many-to-one pouvait m'aider mais la documentation hibernate est malheureusement souvent assez pauvre en exemple "real life" et je ne trouve pas mon bohneur.
Une idée ?