Sobes.tech
Middle

Milyen típusú kapcsolatok léteznek a Hibernate-ben?

sobes.tech MI

Válasz az MI-től

A Hibernate az alábbi típusú kapcsolatokat határozza meg az entitások között:

  1. Egyszerű kapcsolat (Basic Association): Egy-egy kapcsolat, ahol egy entitás közvetlen hivatkozást tartalmaz egy másikra (külső táblák használata nélkül).

  2. "Egy-hoz-Sok" kapcsolatok (One-to-Many):

    • Egy entitás sok más entitással lehet összekapcsolva.
    • Általában egy külső kulcs segítségével valósul meg a "sok" táblában.
  3. "Sok-hoz-Egy" kapcsolatok (Many-to-One):

    • Sok entitás kapcsolódik egy másik entitáshoz.
    • Ez az "Egy-hoz-Sok" kapcsolat ellentéte.
    • Külső kulcs segítségével valósul meg a "sok" táblában.
  4. "Egy-hoz-Egy" kapcsolatok (One-to-One):

    • Minden típusú entitás legfeljebb egy másik típusú entitással van összekapcsolva.
    • Ez vagy közös elsődleges kulccsal, vagy külső kulccsal valósítható meg az egyik táblában.
  5. "Sok-hoz-Sok" kapcsolatok (Many-to-Many):

    • Sok entitás van összekapcsolva sok más entitással.
    • Ehhez külön közbenső táblára van szükség a kapcsolatok tárolásához.

A Hibernate annotációkat biztosít ezeknek a kapcsolatoknak a leírására:

  • @OneToOne
  • @OneToMany
  • @ManyToOne
  • @ManyToMany

Ezenkívül lehetőség van kaszkád műveletek (cascading) konfigurálására is, amelyek automatikusan terjesztik a műveleteket az entitás felett (például mentés, törlés) a kapcsolódó entitásokra.