[VSA | Cvičenie] 3 - JPA jednosmerné asociácie
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Cvičenie sa venuje jednosmerným asociáciám v JPA a nadväzuje na predchádzajúcu prednášku o vzťahoch 1:N, N:1 a N:N. Na novom projekte s databázou MySQL a knižnicou Lombok sa demonštruje vytvorenie entitnej triedy Game s primárnym kľúčom generovaným stratégiou auto, pričom sa vysvetľujú rozdiely medzi stratégiami identity, sequence a table. Ďalej sa ukazuje mapovanie kolekcie hodnôt typu enum (žánre hry) pomocou anotácie @ElementCollection, ktorá vytvára samostatnú tabuľku, a anotácie @Enumerated(EnumType.STRING) na ukladanie čitateľných reťazcov namiesto poradových čísel. Na záver sa začína budovať jednosmerná N:N asociácia medzi hrou a vydavateľom (Publisher) ako obdoba vzťahu kniha–autor z predchádzajúcej prednášky.
- - Vytvorenie entitnej triedy Game s anotáciami @Entity, @Id a @GeneratedValue.
- - Vysvetlenie stratégií generovania primárneho kľúča: auto, identity, sequence, table.
- - Použitie Lomboku (@Data) na automatické generovanie getterov, setterov a konštruktorov.
- - Mapovanie kolekcie enum hodnôt pomocou @ElementCollection do samostatnej tabuľky.
- - Anotácia @Enumerated(EnumType.STRING) na ukladanie enum hodnôt ako textu namiesto čísel.
- - Nutnosť umiestniť persistence.xml do priečinka META-INF v resources.
- - Začiatok modelovania jednosmerného vzťahu N:N medzi entitami Game a Publisher.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky