Pouze tento týden sleva až 80 % na e-learning týkající se Pythonu
Aktuálně: Postihly zákazy tvou profesi? Poptávka po ajťácích prudce roste, využij podzimní akce 30% výuky zdarma!

Lekce 10 - Filmová databáze v Java Spring Boot - Přidávání uživatelů

V předchozí lekci, Filmová databáze v Java Spring Boot - Propojení API a entity, jsme si ukázali, jak budeme postupovat při komunikaci s frontendem. Také jsme si poprvé spustili projekt a viděli naši databázi.

Dnes si představíme DTO (Data Transfer Object), propojíme si první funkční mapping s frontendem a uložíme si do databáze data, která nám přijdou z formuláře.

DTO

Pro komunikaci s frontendem budeme používat takzvané DTO. Je to v podstatě to stejné, jako entita, ale neslouží k přímému ukládání. Bude mít většinu stejných proměnných, jako entita, ale ne všechny. Důvod, proč chceme dvě třídy s poměrně stejnými vlastnosti, je vyhnutí se cyklické vazbě. Pojďme si situaci blíže představit.

Cyklická vazba entit

Řekněme, že máme entitu User (uživatel) a Article (článek). Entita User má list entit Article, aby byla dodržena vazba uživatele na jeho články v databázi. Abychom vazbu správně implementovali do tříd, musí mít i jednotlivé Article pak odkaz na svého User, kterému patří, tedy i z druhé strany. Zatím žádný problém.

Pokud bychom ovšem chtěli uživatele třeba vypsat, Spring by nám celý list vypsal jako JSON. A snažil by se zde vypsat onen odkaz Article na User. U uživatele by ale vypsal zas jako jeho vlastnosti s tím stejným listem Articlů, každý článek by zas vypsal User se seznamem articlů a asi už dokážete říci, co by se stalo. Vznikl by nekonečně velký reponse, nekonečně se opakujících dat uživatelů a jejich článků a jejich uživatelů a jejich článků a jejich uživatelů...

Oboustranných odkazů se zbavit nechceme, protože by jinak mohlo být komplikované na různých částech aplikace získávat data. Proto si kromě entit User a Article, které na sebe mají oboustranné odkazy, vytvoříme i


 

...konec náhledu článku...

Prémiový článek

Prémiový článek

Na itnetwork.cz se nachází největší a nejucelenější česká databáze s výukovými články, jejímž cílem je umožnit kvalitní vzdělání v oblasti IT úplně každému. Měsíčně zobrazíme k milionu článků a sklidíme desítky děkovných emailů, kde nám sdělujete, že jsme vám pomohli k lepšímu zaměstnání nebo vzdělání.

Ačkoli se snažíme držet většinu obsahu úplně zadarmo, udržovat síť v provozu a aktuální stojí obrovské úsilí. Proto je nějaký obsah, jako cvičení nebo odbornější články, přístupný pouze za body. Nebojte, nestojí to skoro nic :)

Popis článku

Požadovaný článek má následující obsah:

V Java Spring Boot tutoriálu se podíváme na přidávání uživatelů. Uděláme si první funkční endpoint a repozitář. Taktéž se podíváme na response body.

Omezená nabídka: Nauč se vše a ušetři

Koupit články a funkce postupně a po jednom 364 bodů
Koupit všechny aktuálně dostupné články v sekci se všemi funkcemi za exkluzivní cenu 309 bodů
Na svém účtu máš aktuálně 0 bodů
Koupí tohoto výhodného balíčku získáš přístup ke všem 15 článkům s kontrolou a certifikací a ještě navíc ušetříš 137 Kč. Nabídka je omezená pouze pro první články z kurzu a obsahuje exkluzivní slevu 15%.
309 bodů získáš za přidání svého článku na síť nebo odpovídá 908 Kč 772 Kč

Pozor, pokud si koupíš pouze tento článek, ztratíš nárok na speciální slevu 15% na balíček všech článků.

Pro přístup k článku potřebuješ 28 bodů
Na svém účtu máš aktuálně 0 bodů
28 bodů získáš za přidání svého článku na síť nebo odpovídá 70 Kč

Před koupí tohoto článku je třeba koupit předchozí díl

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium III, koupí článku souhlasíš se smluvními podmínkami.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem
Článek pro vás napsal Tomáš Střecha
Avatar
Autor se věnuje tvorbě backend webových aplikací v Javovém frameworku Spring boot, grafickému vykreslování v C++ společně s pomocí OpenGL.
Aktivity (7)