Middle
Millised on Hibernate'is olemasolevad sidemete tüübid?
sobes.tech AI
Vastus AI-lt
Hibernate määratleb järgmised seosed tüübid entiteetide vahel:
-
Põhiseos (Basic Association): Üks-ühele seos, kus üks entiteet sisaldab otsest viidet teisele (ilma väliste tabeliteta).
-
"Üks-mitmele" seosed (One-to-Many):
- Üks entiteet võib olla seotud paljude teiste entiteetidega.
- Tavaliselt rakendatakse välisvõtme abil "mitme" tabelis.
-
"Mitme-ühele" seosed (Many-to-One):
- Paljud entiteedid on seotud ühe teise entiteediga.
- See on vastupidine "Üks-mitmele" seosele.
- Rakendatakse välisvõtme kaudu "mitme" tabelis.
-
"Üks-ühele" seosed (One-to-One):
- Iga ühe tüüpi entiteet on seotud maksimaalselt ühe teise tüüpi entiteediga.
- Rakendatakse kas ühise põhivõtme või välisvõtme kaudu ühes tabelis.
-
"Mitme-mitme" seosed (Many-to-Many):
- Paljud ühe tüüpi entiteedid on seotud paljude teise tüüpi entiteediga.
- Selleks on vaja eraldi ühendustabelit seoste salvestamiseks.
Hibernate pakub annotatsioone nende seoste kirjeldamiseks:
@OneToOne@OneToMany@ManyToOne@ManyToMany
Samuti on võimalik konfigureerida kaskaadoperatsioone (cascading), mis automaatselt levitavad operatsioone (näiteks salvestamine, kustutamine) seotud entiteetidele.