Egy a többhöz leképezés

Az Egy a többhöz leképezések használatával határozhat meg egy a többhöz számosságú viszonyt.

  1. A JPA szerkezet nézetben válassza ki a leképezni kívánt mezőt.

  2. Kattintson a mezőre, majd válassza az előugró menü Leképezés a következőként > Egy a többhöz menüpontját. A JPA részletek nézet (attribútumokhoz) megjeleníti a kijelöltek tulajdonságait.

  3. Ezen táblázat használatával töltheti ki a JPA részletek nézet Általános információk mezőit.

    Tulajdonság Leírás Alapértelmezés
    Leképezési entitás típusa hiperhivatkozás A leképezést Egy a többhöz leképezésként határozza meg. Ez a @OneToMany annotációnak felel meg. Egy a többhöz
    Cél entitás Az entitás, amelyre ez az attribútum le van képezve.
    Kaszkád Részletekért tekintse meg a "Kaszkád típusa" részt.
    • Alapértelmezés

    • Összes

    • Megtartás

    • Összefésülés

    • Eltávolítás


    Lehívás Meghatározza azt, hogy az adatok hogyan legyenek betöltve az adatbázisból. Részletekért tekintse meg a "Lehívás típusa" részt.
    • Szorgalmas

    • Lusta

    Szorgalmas
    Leképezte A viszonyt birtokló adatbázis mező.
    Rendezés Adja meg a lekérdezésekből visszatérített objektumok alapértelmezett sorrendjét. Részletekért tekintse meg a "Sorba rendezte" részt.
    • Nincs rendezés

    • Elsődleges kulcs szerint

    • Egyéni

    Nincs rendezés

  4. A táblázat segítségével töltse ki az Összefésülési tábla információk mezőket a JPA részletek nézetben.

    Tulajdonság Leírás Alapértelmezés
    Név Az összefésülési tábla neve Alapértelmezésben a rendszer azt feltételezi, hogy a név az entitásokhoz tartozó elsődleges táblák nevének aláhúzással történő összevonásával keletkezik.
    Összefésülési oszlopok Adjon meg legalább két összefésülési oszlopot (azaz egy elsődleges kulcsot).
    Inverz összefésülési oszlopok A társítás birtokolt (vagy inverz) oldalán lévő összefésülési oszlop: a birtokolt egyed elsődleges kulcs oszlopa.

Az Eclipse a következő annotációkat adja a mezőhöz:

@OneToMany(targetEntity=<CÉL_ENTITÁS>)
@Column(name="<OSZLOP>")


@OneToMany(targetEntity=<CÉL_ENTITÁS>.class, cascade=CascadeType.<KASZKÁD_TÍPUS>,
    fetch = FetchType.<LEHÍVÁS_TÍPUSA>, mappedBy = "<LEKÉPEZTE>")@OrderBy("<SORBA_RENDEZTE>")
@JoinTable(name="<ÖSSZEFÉSÜLÉSI_TÁBLA_NEVE>", joinColumns=@JoinColumn(name=
    "<ÖSSZEFÉSÜLÉSI_OSZLOP_NEVE>", referencedColumnName="<ÖSSZEFÉSÜLÉSI_OSZLOP_HIVATKOZOTT_OSZLOP>"),
    inverseJoinColumns=@JoinColumn(name="<INVERZ_ÖSSZEFÉSÜLÉSI_OSZLOP_NEVE>",
    referencedColumnName="<INVERZ_ÖSSZEFÉSÜLÉSI_OSZLOP_HIVATKOZOTT_OSZLOP>"))

 

Kapcsolódó feladat

Egyed leképezése

 

Kapcsolódó hivatkozások

JPA szerkezet nézet
JPA részletek nézet (attribútumokhoz)

 

Kapcsolódó fogalom

OR leképezések bemutatása
Az EJB 3.0 Java Persistence API bemutatása