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 :
Mais bon c'est pas terrible, j'ai pas besoin de 3 sets puisque les données sont identiques a l'intérieur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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>
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 ?
Partager