Bonjour à tous,
je voudrais créer une table de tradution pour les pays
Je voudrais les entities
j'ai 3 tables :
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
19
20
21
22
23 public class Content{ ... Map<Language,ContentI18N> translations; ... public String getTitle(Language language){ return translations.get(language).getTitle(); } public String getContent(Language language){ return translations.get(language).getContent(); } ... } public class ContentI18N{ public String getTitle(Language language){ return title; } public String getContent(Language language){ return content; } }
content( id,contentkey)
contenti18n( content_id, language_id,title,content )
language (id,languagekey)
content :
1 | content1
2 | content2
language :
1 | fr
2 | en
contenti18n
1 | 1 | Mon titre en français | Mon texte en français
1 | 2 | English title | English text
en sql pour obtenir toute les entrées il suffit de faire :
SELECT *
FROM `content`
JOIN contenti18n ON content.id = contenti18n.content_id
et pour obtenir une valeur en particulier :
SELECT *
FROM `content`
JOIN contenti18n ON content.id = contenti18n.content_id
where language_id= ?
Je n'ai pas réussi à faire le mapping. Ca doit être possible j'imagine.
J'ai essayé pas mal de truc avec ManyToOne dans l'entity Content sans succès
Quelqu'un sait il comment il faudrait faire?






Répondre avec citation
Partager