Mapper plusieurs Maps<String, Double> dans la même table
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:
Code:
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*/
} |
Merci d'avance pour vos éclaircissements et solutions!