Podmienky v Thymeleaf
1. Prehľad
V tomto výučbe sa pozrieme na rôzne typy podmienečných prostriedkov dostupných v Thymeleaf.
Stručný úvod do Thymeleaf nájdete v tomto článku.
2. Maven závislosti
Začnime so závislosťami Maven, ktoré sú potrebné na použitie Thymeleaf spolu s Spring:
org.thymeleaf thymeleaf 3.0.11.RELEASE org.thymeleaf thymeleaf-spring5 3.0.11.RELEASE
Pre ďalšie jarné vydania zhoda thymeleaf-springX mala by sa používať knižnica, kde X znamená jarnú verziu. Pamätajte tiež na to Jar 5 je podporovaná počnúc 3.0.8. UVOĽNENIE, Thymeleaf.
Najnovšie verzie požadovaných závislostí nájdete tu.
3. Thymeleaf Conditionals
Musíme rozlišovať medzi podmienkami, ktoré nám umožňujú vykresliť text v rámci prvku HTML v závislosti od podmienky, a podmienkami, ktoré riadia inštanciu samotného prvku HTML.
Definujme si svoje Učiteľ modelová trieda, ktorú budeme používať v tomto článku:
public class Teacher implementuje Serializable {private String gender; private boolean isActive; private List courses = new ArrayList (); súkromný reťazec additionalSkills;
3.1. Prevádzkovateľ Elvis
Prevádzkovateľ Elvis ?: umožňuje nám vykresliť text v rámci prvku HTML v závislosti od aktuálneho stavu premennej.
Ak je premenná, môžeme použiť predvolené výrazy na poskytnutie predvoleného textu nulový:
V hornom príklade chceme zobraziť obsah súboru učiteľ.prídavné zručnostipremenná, ak je definovaná a chceme text “NEZNÁMY”Má byť poskytnuté inak.
Je tiež možné zobraziť ľubovoľný text v závislosti od boolovského výrazu:
Môžeme dopytovať jednoduchú boolovskú premennú ako v predchádzajúcom príklade, ale je možné aj porovnanie reťazcov a kontroly rozsahu.
Podporované sú nasledujúce komparátory a ich textové znázornenia> (gt),> = (ge), <(lt), <= (le), == (ekv) a! = (ne).
3.2. Ak - Pokiaľ
The th: ak a th: pokiaľ atribúty nám umožňujú vykresliť prvok HTML v závislosti od poskytnutej podmienky:
Žena muž
Ak je obsah učiteľ.gender premenná sa rovná F, potom prvok span s hodnotou „Žena“Sa vykreslí.
V opačnom prípade by prvok s „Muž“Sa vykreslí. Takéto nastavenie je porovnateľné s keby-inak klauzula prítomná vo väčšine programovacích jazykov.
3.3. Prepínač - puzdro
Ak existujú viac ako dva možné výsledky výrazu, môžeme použiť znak th: prepínač a th: prípad atribúty pre podmienené vykreslenie prvkov HTML:
EŠTE NIE KURZY!
Podľa veľkostiučiteľ.kurzyzoznam buď zobrazíme predvolený text, jeden kurz alebo všetky dostupné kurzy. Hviezdička (*)sa používa pre predvolenú možnosť.
4. Záver
V tomto krátkom článku sme skúmali rôzne typy Thymeleaf podmienených a predstavili niekoľko zjednodušených príkladov ukazujúcich rôzne možnosti.
Príklady nájdete v projekte GitHub.