Middle
Koje vrste veza postoje u Hibernate-u?
sobes.tech АИ
Одговор од АИ
Hibernate definiše sledeće vrste odnosa između entiteta:
-
Osnovna veza (Basic Association): Veza jedan-na-jedan, gde jedna entitet sadrži direktnu referencu na drugu (bez korišćenja spoljnih tabela za vezu).
-
Veze "Jedan prema Mnogi" (One-to-Many):
- Jedna entitet može biti povezana sa mnogim drugim entitetima.
- Obično se implementira korišćenjem spoljnog ključa u tabeli "mnogi".
-
Veze "Mnogi prema Jedan" (Many-to-One):
- Mnoge entitete su povezane sa jednom drugom entitetom.
- To je suprotna strana veze "Jedan prema Mnogi".
- Implementira se putem spoljnog ključa u tabeli "mnogi".
-
Veze "Jedan prema Jedan" (One-to-One):
- Svaka entitet jednog tipa je povezana sa najviše jednom entitetom drugog tipa.
- Implementira se ili putem zajedničkog primarnog ključa ili putem spoljnog ključa u jednoj od tabela.
-
Veze "Mnogi prema Mnogi" (Many-to-Many):
- Mnoge entitete jednog tipa su povezane sa mnogim entitetima drugog tipa.
- Zahteva posebnu tabelu za čuvanje veza.
Hibernate pruža anotacije za opisivanje ovih veza:
@OneToOne@OneToMany@ManyToOne@ManyToMany
Takođe je moguće konfigurisati operacije kaskadiranja (cascading) za automatsko širenje operacija nad entitetom (npr. čuvanje, brisanje) na povezane entitete.