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.