Middle
Ce tipuri de legături există în Hibernate?
sobes.tech AI
Răspuns de la AI
Hibernate definește următoarele tipuri de relații între entități:
-
Asocierea de bază (Basic Association): Relație unu-la-unu, în care o entitate conține o referință directă către alta (fără utilizarea tabelelor externe pentru relație).
-
Asocieri "Unu-la-Mulți" (One-to-Many):
- O entitate poate fi asociată cu multe alte entități.
- De obicei, se implementează folosind o cheie externă în tabelul "mulți".
-
Asocieri "Mulți-la-Unu" (Many-to-One):
- Multe entități sunt asociate cu o singură altă entitate.
- Este partea opusă a relației "Unu-la-Mulți".
- Se implementează printr-o cheie externă în tabelul "mulți".
-
Asocieri "Unu-la-Unu" (One-to-One):
- Fiecare entitate de un tip este asociată, cel mult, cu o altă entitate de alt tip.
- Se implementează fie printr-o cheie primară comună, fie printr-o cheie externă într-una dintre tabele.
-
Asocieri "Mulți-la-Mulți" (Many-to-Many):
- Multe entități de un tip sunt asociate cu multe entități de alt tip.
- Necesită un tabel intermediar pentru stocarea relațiilor.
Hibernate oferă adnotări pentru a descrie aceste relații:
@OneToOne@OneToMany@ManyToOne@ManyToMany
De asemenea, este posibil să se configureze operații de cascadă (cascading) pentru propagarea automată a operațiilor asupra entității (de exemplu, salvare, ștergere) către entitățile legate.