Bonsoir tous le monde,

J'ai un problème a comprendre le concept du composite id. J'ai 2 table dans ma base Technologie et Compétence. Une compétence peut avoir plusieurs technologies.

Le problème est que hibernate m'a donné 3 classes model : Competence.java Technolgie.java TechnologieId.java. Et je sais pas comment je peux faire l'ajout d'une technologie et a quoi sert le TechnologieId

Technologie.Java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
public class Technologie implements java.io.Serializable {
 
    private TechnologieId id;
    private Competence competence;
    private String libelleTechnologie;
}
TechnologieId.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public class TechnologieId implements java.io.Serializable {
 
    private int idCompetence;
    private int idTechnologie;}
Technologie.hbm.xml
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
 
 <class name="com.model.Technologie" table="technologie" catalog="gestioncollaborateur">
        <composite-id name="id" class="com.model.TechnologieId">
            <key-property name="idCompetence" type="int">
                <column name="idCompetence" />
            </key-property>
            <key-property name="idTechnologie" type="int">
                <column name="idTechnologie" />
            </key-property>
        </composite-id>
        <many-to-one name="competence" class="com.model.Competence" update="false" insert="false" fetch="select">
            <column name="idCompetence" not-null="true" />
        </many-to-one>
        <property name="libelleTechnologie" type="string">
            <column name="libelleTechnologie" length="254" />
        </property>
    </class>