Využij akce až 30% zdarma při nákupu e-learningu. Zároveň pouze tento týden sleva až 80 % na e-learning týkající se Javy
Hledáme fulltime koordinátora/ku kurzů. 100% homeoffice,100% časově flexibilní. Mám zájem!
Java week

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...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

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

Koupit lekce a funkce postupně a po jednom 588 bodů
Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh za exkluzivní cenu 500 bodů (1 247 Kč)
Na svém účtu máš aktuálně 0 bodů
Koupí tohoto výhodného balíčku získáš přístup ke všem 25 lekcím s kontrolou a certifikací a ještě navíc ušetříš 220 Kč. Nabídka je omezená pouze pro první lekce z kurzu a obsahuje exkluzivní slevu 15%.
500 bodů získáš za přidání svého článku na síť nebo odpovídá 1 466 Kč 1 247 Kč

Pozor, pokud si koupíš pouze tuto lekci, ztratíš nárok na speciální slevu 15% na balíček všech lekcí.

Koupit jen lekci 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

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

Co od nás v dalších lekcích dostaneš?
  • Neomezený a trvalý přístup k jednotlivým lekcím.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

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.

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íť.

Č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 (8)