Bonjour,
Ja précise que nous travaillons en JPA 2 avec hibernate, donc il est possible, même si ce n'est pas souhaitable d'avoir des annotations purement hibernate.
Avec mes collègues nous avons besoin de créer une table de traduction et voici la solution que nous envisageons au niveau de la base (les noms de tables sont en gras , le nom des champs en italique :
Nous aurions donc des entitys nommés Traduction,Langue,A et B comme on le voit il n'y a pas de vraies références de Traduction ni vers A ni vers B.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 langue id (pk) code libelle a id (pk) b id (pk) traduction nomTable(Pk) nomChamp(Pk) idDansLaTable(Pk) idLangue(Pk)(FK) texte
On ne fera pas de détails sur l'objet traduction si ce n'est qu'à mon avis il ne pourra pas contenir de référence vers A ni B. Voici ce que nous aimerions avoir très schématiquement
J'ai déjà une partie de réponse pour ce qui est de la MAP on peu utiliser des
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 class A{ id Map<Langue,Traduction> libelle Map<Langue,Traduction> description } class B{ id Map<Langue,Traduction> libelleCourt Map<Langue,Traduction> libelleLong Map<Langue,Traduction> autre }
Nous avons vu une annotation @JoinColumnsOrFormulas, mais il y a peu de documentation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @MapKeyColumn ou @MapKeyClass
Partager