Associazione molti-a-molti

Utilizzare una Associazione molti-a-molti per definire un'associazione molti-a-molti con la stessa molteplicit…. Un'associazione molti-a-molti ha due lati: lato di appartenenza e lato di non appartenenza. Ô necessario specificare la tabella di join sul lato di appartenenza. Per associazioni bidirezionali, Š necessario che ogni lato abbia il lato di appartenenza.

  1. Nella Vista Struttura JPA, selezionare il campo da associare.

  2. Fare clic con il tasto destro del mouse sul campo e, quindi, selezionare Associa come > Molti a molti. La Vista Dettagli JPA (per gli attributi) visualizza le propriet… relative al campo selezionato.

  3. Utilizzare questa tabella per completare i campi Informazioni generali della vista Dettagli JPA.

    Propriet… Descrizione Impostazione predefinita
    Collegamento ipertestuale entit… di associazione Definisce questa associazione come una Associazione molti-a-molti.

    Questo campo corrisponde all'annotazione @ManyToMany.

    Molti a molti
    Entit… di destinazione L'entit… cui viene associato questo attributo. nullo

    Non Š necessario specificare in maniera esplicita l'entit… di destinazione, poich‚ pu• essere dedotto dal tipo di oggetto di riferimento.

    Recupero Definisce la modalit… di caricamento dati dal database. Per maggiori dettagli, fare riferimento a "Tipo di recupero".
    • Veloce

    • Lento

    Lento
    Associato da Il campo del database che contiene la relazione.
    Ordina per Specificare l'ordine predefinito per oggetti restituiti da una query. Per maggiori dettagli, fare riferimento a "Ordinato in base a".
    • Nessun ordinamento

    • Chiave primaria

    • Personalizzato

    Nessun ordinamento

  4. Utilizzare questa tabella per completare i campi nell'area Informazioni sull'esecuzione di join di tabella nella vista Dettagli JPA.

    Propriet… Descrizione Impostazione predefinita
    Nome Il nome della tabella di join che contiene la colonna a chiave esterna. Ô necessario specificare la tabella di join sul lato di appartenenza.

    Per impostazione predefinita, Š necessario che il nome corrisponda alle tabelle primarie associate alle entit… unite da un segno di sottolineatura.

    Effettua join di colonne Selezionare Annulla valore predefinito e le colonne di join Aggiungi, Modifica o Rimuovi. Per impostazione predefinita, Š necessario che il nome corrisponda alle tabelle primarie associate alle entit… unite da un segno di sottolineatura.
    Effettua join inversa di colonne Selezionare Annulla valore predefinito e le colonne di join Aggiungi, Modifica o Rimuovi. Per impostazione predefinita, Š necessario che l'associazione abbia una sola join.

  5. Per aggiungere una nuova Unione oppure Effettua join inversa di colonne, fare clic su Aggiungi.

    Per modificare una Unione esistente oppure Effettua join inversa di colonne, selezionare il campo e fare clic su Modifica.

Eclipse aggiunge le seguenti annotazioni al campo:

@JoinTable(joinColumns=@JoinColumn(name="<JOIN_COLUMN>"), 
    name = "<JOIN_TABLE_NAME>")
@ManyToMany(cascade=CascadeType.<CASCADE_TYPE>, fetch=FetchType.<FETCH_TYPE>,
    targetEntity=<TARGET_ENTITY>, mappedBy = "<MAPPED_BY>")
@OrderBy("<ORDER_BY>")

 

Attivit… correlate

Associazione di un'entit…

 

Attivit… correlate

Vista Struttura JPA
Vista Dettagli JPA (per attributi)

 

Concetti correlati

Informazioni sulle associazioni OR
Informazioni su EJB 3.0 Java Persistence API