Mappage un à plusieurs

Utilisez un mappage un à plusieurs pour définir une relation avec une multiplicité un à plusieurs.

  1. Dans la vue Structure JPA, sélectionnez la zone à mapper.

  2. Cliquez avec le bouton droit de la souris sur la zone, puis sélectionnez Mapper comme > Un à plusieurs. La vue Caractéristiques JPA (pour les attributs) affiche les propriétés de la zone sélectionnée.

  3. Utilisez cette table pour remplir les zones Informations générales de la vue Caractéristiques JPA.

    Propriété Description Valeur par défaut
    Hyperlien du type de mappage d'entité Définit le mappage comme étant de type Un à plusieurs. Cette zone correspond à l'annotation @OneToMany. Un à plusieurs
    Entité cible Entité à laquelle cet attribut est mappé.
    Cascade Pour plus de détails, voir Type en cascade.
    • Valeur par défaut

    • Tous

    • Conserver

    • Fusionner

    • Supprimer


    Extraction Définit comment les données sont chargées dans la base de données. Voir "Type d'extraction" pour plus de détails.
    • Eager

    • Lazy

    Eager
    Mappé par Zone base de données qui est propriétaire de la relation.
    Ordonner par Indiquez l'ordre par défaut pour les objets renvoyés dans une requête. Voir "Ordonner par" pour plus de détails.
    • Pas de réorganisation

    • Clé primaire

    • Personnalisé

    Pas de réorganisation

  4. Utilisez cette table pour remplir les zones Informations sur la table jointe dans la vue Caractéristiques JPA.

    Propriété Description Valeur par défaut
    Nom Nom de la table jointe Par défaut, le nom est supposé être constitué par les tables primaires associées aux entités concaténées avec un trait de soulignement.
    Colonnes jointes Indiquez plusieurs colonnes jointes (c'est-à-dire une clé primaire).
    Inverser les colonnes jointes Colonne jointe du côté détenu ( ou inverse) de l'association : colonne de clé primaire de l'entité détenue.

Eclipse ajoute les annotations suivantes à la zone :

@OneToMany(targetEntity=<TARGET_ENTITY>)
@Column(name="<COLUMN>")


@OneToMany(targetEntity=<TARGET_ENTITY>.class, cascade=CascadeType.<CASCADE_TYPE>,
    fetch = FetchType.<FETCH_TYPE>, mappedBy = "<MAPPED_BY>")@OrderBy("<ORDER_BY>")
@JoinTable(name="<JOIN_TABLE_NAME>", joinColumns=@JoinColumn(name=
    "<JOIN_COLUMN_NAME>", referencedColumnName="<JOIN_COLUMN_REFERENCED_COLUMN>"),
    inverseJoinColumns=@JoinColumn(name="<INVERSE_JOIN_COLUMN_NAME>",
    referencedColumnName="<INVERSE_JOIN_COLUMN_REFERENCED_COLUMN>"))

 

Tâche connexe

Mappage d'une entité

 

Référence connexe

Vue Structure JPA
Vue Caractéristiques JPA (pour les attributs)

 

Concept connexe

Présentation des mappages ORM
Présentation de l'interface de programme d'application de persistance Java Enterprise JavaBeans 3.0