Bonjour,
J'utilise hibernate depuis peu, et j'ai encore du mal sur certains points.
J'aimerai juste mapper 3 tables de ma base de données (Contact, Apprenti, et formateur) qui héritent d'une classe abstraite (Personne) qui ne correspond pas à une table de ma BDD. La classe Personne a une Foreign Key vers une classe Entreprise.
En gros, c'est le sujet bateau des employés qui héritent de Personne.
La stratégie de mapping est bien "Une table par classe concrète". Le manuel hibernate ne détaille pas bien cette partie à mon gout :s
Mapping de la classe Personne :
Je souhaite pour l'instant simplement récupérer mes Contacts. Je n'ai pas de mapping spécifique pour cette classe en dehors de la classe Personne.
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
26
27
28
29
30
31
32 <hibernate-mapping default-cascade="none" default-access="property" default-lazy="true" auto-import="true"> <!-- Mapping de la super classe personne --> <class name="com.formation.beans.Personne" abstract="true"> <id name="id" column="idPers"> <generator class="native"/> </id> <property name="nom"/> <property name="prenom"/> <property name="email"/> <many-to-one name="ent" class="Entreprise" column="numEnt"/> <!-- Mapping de la classe Contact --> <union-subclass name="Contact" table="t_contact"> <property name="tel"/> <property name="isSource"/> </union-subclass> <!-- Mapping de la classe Apprenti --> <union-subclass name="Apprenti" table="t_apprenti"> <many-to-one name="typeApp"/> <property name="comment"/> </union-subclass> <!-- Mapping de la classe Formateur --> <union-subclass name="Formateur" table="t_formateur"> <property name="tel"/> <property name="firstFormation"/> <property name="isManager"/> </union-subclass> </class> </hibernate-mapping>
Dans ma classe ContactDAO, j'appelle la classe Contact. Et évidemment, il me dit qu'il n'existe pas de mapping pour cette classe.
J'ai dû oublier une étape. Est-ce que qqun pourrait m'éclairer là dessus ? Je ne trouve pas d'exemples complets pour ce type de mapping.
Merci d'avance.
Partager