Parametre požiadavky na jar s Thymeleaf

1. Úvod

V našom článku Úvod do používania aplikácie Thymeleaf na jar sme videli, ako viazať vstupy používateľov na objekty.

Použili sme th: objekt a th: pole v šablóne Thymeleaf a @ModelAttribute v radiči viazať údaje na objekt Java. V tomto článku sa pozrieme na to, ako používať jarnú anotáciu @RequestParam v kombinácii s Thymeleaf.

2. Parametre vo formulároch

Najprv si vytvorme jednoduchý radič, ktorý akceptuje štyri voliteľné parametre požiadavky:

@Controller public class MainController {@RequestMapping ("/") public String index (@RequestParam (value = "participant", required = false) String participant, @RequestParam (value = "country", required = false) String country, @ RequestParam (value = "action", required = false) Akcia reťazca, @RequestParam (value = "id", required = false) Celé číslo, model modelu) {model.addAttribute ("id", id); Zoznam userIds = asList (1,2,3,4); model.addAttribute ("userIds", userIds); návratový "index"; }}

Názov našej šablóny Thymeleaf je index.html. V nasledujúcich troch častiach použijeme rôzne prvky formulára HTML, pomocou ktorých bude používateľ môcť údaje odosielať do kontrolóra.

2.1. Vstupný prvok

Najskôr vytvorme jednoduchý formulár s poľom na zadávanie textu a tlačidlom na odoslanie formulára:

Atribút th: name = ”účastník” naviaže hodnotu vstupného poľa na parameter účastník kontrolóra. Aby to fungovalo, musíme anotovať parameter pomocou @RequestParam (hodnota = „účastník“).

2.2. Vyberte prvok

Rovnako aj pre prvok HTML select:

   Nemecko Holandsko Poľsko Lotyšsko 

Hodnota vybranej možnosti je viazaná na parameter krajina, s poznámkou @RequestParam (hodnota = „krajina“).

2.3. Gombíkový prvok

Ďalším prvkom, kde môžeme použiť th: meno je tlačidlový prvok:

 check-in check-out 

Hodnota parametra závisí od toho, či je na odoslanie formulára stlačené prvé alebo druhé tlačidlo akcia bude buď registrácia alebo odhlásiť sa.

3. Parametre v hypertextových odkazoch

Ďalším spôsobom, ako odovzdať parametre požiadavky kontroléru, je hypertextový odkaz:

V zátvorkách môžeme pridať parametre:

Thymeleaf hodnotí vyššie uvedené:

Používanie výrazov Thymeleaf na generovanie hypertextových odkazov je obzvlášť užitočné, ak chceme priradiť hodnoty parametrov na základe premenných. Napríklad vygenerujme hypertextový odkaz pre každé ID používateľa:

  Používateľ [[$ {userId}]]

Do šablóny môžeme odovzdať zoznam ID používateľov ako vlastníctvo:

Zoznam userIds = asList (1,2,3); model.addAttribute ("userIds", userIds);

A výsledný HTML bude:

 Užívateľ 1

Užívateľ 2

Užívateľ 3

Parameter id v hypertextovom odkaze je viazaný na parameter id, s poznámkou @RequestParam (hodnota = „id“).

4. Zhrnutie

V tomto krátkom článku sme videli, ako používať parametre Spring request v kombinácii s Thymeleaf.

Najskôr sme vytvorili jednoduchý radič, ktorý prijíma parametre požiadavky. Po druhé sme sa pozreli na to, ako pomocou Thymeleaf vygenerovať stránku HTML, ktorá môže volať nášho kontrolóra.

Celý zdrojový kód všetkých príkladov v tomto článku nájdete na GitHub.


$config[zx-auto] not found$config[zx-overlay] not found