AI Academy
Kampanje
CodeGym-universitetet
Læring
Kurs
Oppgaver
Undersøkelser & tester
Spill
Hjelp
Timeplan
Samfunn
Brukere
Forum
Chat
Artikler
Suksesshistorier
Aktivitet
Anmeldelser
Abonnementer
Lyst tema
Leksjoner
Anmeldelser
Om oss
Start
Begynn å lære
Start learning now
Min fremgang
Kurs
Oppdragskart
Leksjoner
Java
SQL & Hibernate
Nivå 15
Arbeide med enhetshierarkier
SQL & Hibernate
Level 15,
Leksjon 0
Bevaringsspørsmål I dag vil vi ha et nytt og superinteressant opplegg - ved å bruke Hibernate-funksjonene for å lagre klassehierarkiet i databasen. Et klassehierarki er et sett med klasser knyttet til hverandre ved et arveforhold. Tenk deg
En enkelt tabell for hele klassehierarkiet
SQL & Hibernate
Level 15,
Leksjon 1
Beskrivelse Den neste tilnærmingen til å lagre et klassehierarki er å lagre alle klassene i hierarkiet i en enkelt tabell . Denne strategien kalles Single Table . For eksempel slik: CREATE TABLE user_ employee_client {
Diskriminator
SQL & Hibernate
Level 15,
Leksjon 2
Beskrivelse I forrige leksjon så du at Hibernate bruker en spesiell DTYPE VARCHAR-kolonne for å lagre navnet på en Entity-klasse. En slik kolonne kalles en diskriminator . Den brukes til entydig å bestemme hvilken klasse som skal opprettes
Sammenføyd Tabell
SQL & Hibernate
Level 15,
Leksjon 3
Beskrivelse En annen strategi for å lagre et klassehierarki i en database kalles Joined Table. Det er en spesiell merknad for det: @Inheritance(strategy = InheritanceType.JOINED) Et eksempel på våre klasser: @Inheritance(strategy = Inherita
Tabell per klasse
SQL & Hibernate
Level 15,
Leksjon 4
5.1 Beskrivelse Og til slutt, den siste strategien er Tabell per klasse. Det betyr at en egen tabell vil bli brukt for hver klasse. På en måte er dette den samme MappedSuperClass, bare i en oppdatert form. Først må du bruke en merknad: @Inh
Velge en hierarkibevaringsstrategi
SQL & Hibernate
Level 15,
Leksjon 5
Beskrivelse Hver av de ovennevnte strategiene og teknikkene har sine egne fordeler og ulemper. Generelle anbefalinger for å velge en spesifikk strategi vil se slik ut: TABLE_PER_CLASS-strategi basert på UNION Denne strategien er best valgt
Please enable JavaScript to continue using this application.