13. diel - Filmová databáza v Java Spring Boot - Limit počtu výsledkov
V predchádzajúcej lekcii, Filmová databáza v Java Spring Boot - Získavanie osôb , sme sa naučili, ako sa pracuje pokročilo s repozitár a zobrazili sme si osoby.
V dnešnej lekcii sa naučíme, ako limitovať počet výsledkov z databázy. Naučíme sa dva spôsoby:
- špeciálna repozitár pomocou stránkovanie a potom sa pozrieme na
- anotáciu
@Query
, ktorú môžeme pre tieto účely takisto využiť.
Motivácia
V minulej lekcii sme si povedali, že nám jednoducho repozitár nedovolí
len cez názov metódy určiť, koľko výsledkov z databázy chceme. My sa ale
určite občas dostaneme do situácie, kedy treba užívateľov na stránke bude
cez 1000
. A zobrazovať hneď 1000
výsledkov je pre
užívateľov, ktorý pozerá na nejaký výpis registrovaných, veľký
problém, pretože je toho jednoducho moc a stránka je strašne dlhá.
Nehľadiac na to, že zaťažujeme aj server a databázu.
Preto by sme my, ako programátori, mali limitovať počet výsledkov a ideálne nechať i užívateľov vybrať, koľko výsledkov na jednej stránke chce. To robí náš frontend, ale my s tým zatiaľ nepracujeme.
Dnes náš backend toto obmedzenie naučíme a ukážeme si hneď niekoľko spôsobov, ako ho implementovať.
"Brute force" riešenie
Brute force riešenie je spôsob, ako sa riešia problémy veľmi neefektívne. Je to riešenie, ktoré dokáže to, čo potrebujeme, ale veľmi neelegantná z hľadiska kódu, využitie procesora či pamäte.
V našom prípade by Brute force riešenie bolo získať všetky výsledky z databázy a tieto výsledky následne orezať na limit počtu výsledkov. Toto rozhodne robiť nebudeme, aj keď to riešenie je, pretože by sme mohli preťažiť databázu.
Stránkovanie
Stránkovanie výsledkov je síce určené k niečomu trochu inému, než len limitovať ich počet, ale môžeme ho jednoducho použiť. Veľa riešenie je stavaná na tomto.
PageablePersonRepository
Poďme si vytvoriť nový repozitár.
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium III, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V Java Spring Boot lekcii sa naučíme limitovať počet výsledkov z databázy a tiež sa naučíme novým anotáciám a novému typu repozitára.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.