Bonjour,
J'ai le problème suivant: Je souhaite persister une classe contenant 3 Maps<String, Double> dans une seule table.
Les clés de ces 3 maps peuvent être identiques.
Par défaut, @CollectionOfElements + @JoinTable(name="MA_MAPS_xxx") va créer 3 tables différentes.
Pour ne pas surcharger le schéma, je voudrais, par exemple, que Hibernate sérialise les maps en ajoutant aux couple classique 'mapkey / value' un "discriminant" comme "prix, taux, promo" qui serait utilisé en plus de mapkey et price_id lors de la jointure. J'ai testé les @PrimaryJoinColumns, et autres @JoinColums + columnsdefinition, sans succès jusqu'ici.
Pour illustration:
Merci d'avance pour vos éclaircissements et solutions!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 @Entity @Table(name = "XP_PRICES") public class Price extends UUIDBaseEntity { private Map<String, Double> prix; private Map<String, Double> promo; private Map<String, Double> taux; /*getters and setters*/ }
Partager