Bonjour,
J'ai fait une application en Hibernate avec deux entité Person et Event, et j'ai trouvé dans la documentation si la relation entre les deux entité est une association unidirectionnelle on introduit l'option <many-to-many column="EVENT_ID" class="Event"/> pourquoi on a pas mis le <many-to-one> puisqu'on veut dans un premier temps juste ajouter une instance de la classe Event à la collection des références de la classe Event à une instance de la classe Person.
Voila le fichier mapping de la classe Person ----> Person.hbm.xml :
J'arrive pas à comprendre celui-la car l'étape suivante c'est d'utiliser l'associations bidirectionnelles en introduisant la notion de inverse comme par exemple:
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
24
25 <hibernate-mapping package="org.hibernate.tutorial.domain"> <class name="Person" table="PERSON"> <id name="id" column="PERSON_ID"> <generator class="native"/> </id> <property name="age" type="integer"/> <property name="firstname" type="string"/> <property name="lastname" type="string"/> <!-- You add an instance of Event to the collection of event references, of an instance of Person --> <set name="events" table="PERSON_EVENT"> <key column="PERSON_ID"/> <many-to-many column="EVENT_ID" class="Event"/> </set> <set name="emailAddresses" table="PERSON_EMAIL_ADDR"> <key column="PERSON_ID"/> <element type="string" column="EMAIL_ADDR"/> </set> </class> </hibernate-mapping>
Cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <set name="participants" table="PERSON_EVENT" inverse="true" > <!-- inverse="true" --> <key column="EVENT_ID"/> <many-to-many column="PERSON_ID" class="Person"/> </set>
Partager