Problème avec clefs étrangères
Bonjour
J'ai une base MySql avec deux tables :
Code:
1 2 3
| Consultation :
idConsultation (clef primaire)
idPatient (clef étrangère sur 2ème table) |
Code:
1 2 3
| Patient :
idPatient (clef primaire)
nom |
Sous éclipse j'obtiens les classes suivantes :
Code:
1 2 3 4 5
| public class Consultation implements java.io.Serializable {
private Integer id;
private Patient patient;
(getters and setters)
} |
Code:
1 2 3 4 5 6
| public class Patient implements java.io.Serializable {
private Integer idpatient;
private String nom;
private Set<Consultation> consultations = new HashSet<Consultation>(0);
(getters and setters)
} |
fichiers HBM :
Consultation :
Code:
1 2 3 4 5 6 7 8
| <class name="db.Consultation" table="consultation">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="increment" />
</id>
<many-to-one name="patient" class="db.Patient" fetch="select">
<column name="idpatient" />
</many-to-one> |
Patient:
Code:
1 2 3 4 5 6 7 8 9 10 11
| <class name="db.Patient" table="patient">
<id name="idpatient" type="java.lang.Integer">
<column name="idpatient" />
<generator class="increment" />
</id>
<set name="consultations" inverse="true">
<key>
<column name="idpatient" />
</key>
<one-to-many class="db.Consultation" />
</set> |
Si je charge un patient j'arrive à obtenir ses consultation sans problème.
Mais, inversement, en chargeant une consultation je voudrais obtenir les informations sur le patient correspondant. Mais mon objet patient est toujours égal à null. Est-ce possible néanmoins de faire ça avec Hibernate?
Merci pour vos réponses, en espérant avoir été clair.