Je me heurte à un problème de mapping et j'aimerais savoir si il y a une solution.
Donc à l'origine j'avais :
Des User avec une liste de Contact dans une relation one-to-many. Les contacts ont tous un type.
CE qui me permettait donc avec le mapping suivant :
Code:
<class name="User" ...>
...
<map name="contacts" table="CONTACT" lazy="false" cascade="all,delete-orphan" inverse="true" >
<key column="SPC_SPR_ID" not-null="true" />
<map-key column="SPC_SCT_CODE" type="string" />
<one-to-many class="com.nexo.susan.be.model.Contact" />
</map>
...
</class>
Ce qui me donnait un très beau :
Map<String, Contact> user.getContacts() pour obtenir la liste des contacts d'un User indexée par contact type.
Or, dernièrement il a été décidé de pouvoir associer plusieurs contacts du même type à un utilisateur, donc changement du modèle coté clé primaire, etc...
Sauf que maintenant j'aimerais obtenir une :
Map<String, List<Contact>> user.getContacts() qui pour un User me donne la liste des Contact d'un même type, le tout indéxé par ce type.
Est-ce possible à faire en mapping de collection où dois-je forcément utiliser du HQL et indexer le tout a la mimine ?
Merci d'avance
Christophe.