Výukový program JSP Expression Language (EL)

Obsah:

Anonim

Co je Expression Language (EL)?

Expression Language (EL) je mechanismus, který zjednodušuje přístupnost dat uložených v komponentě Java bean a jiných objektech, jako je požadavek, relace a aplikace atd. V JSP existuje mnoho operátorů, které se v EL používají jako aritmetické a logické operátory k provádění výraz. To bylo představeno v JSP 2.0

V tomto výukovém programu se naučíte

  • JSP Syntax of Expression Language (EL)
  • JSP If-else
  • Přepínač JSP
  • JSP pro smyčku
  • JSP While smyčka
  • Provozovatelé JSP

JSP Syntax of Expression Language (EL)

Syntaxe EL : $ (výraz)

  • V JSP se vše, co je ve složených závorkách, vyhodnotí za běhu odeslaného do výstupního proudu.
  • Výraz je platný výraz EL a lze jej smíchat se statickým textem a lze jej kombinovat s jiným výrazem a vytvořit tak větší výraz.

Pro lepší představu o tom, jak funguje výraz v JSP, uvidíme níže uvedený příklad.

V tomto příkladu uvidíme, jak se EL použije jako operátor k přidání dvou čísel (1 + 2) a získání výstupu.

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP1  Výraz je: $ {1 + 2};

Vysvětlení kódu:

  • Řádek kódu 11: Expression Language (EL) je nastaven tam, kde přidáváme dvě čísla 1 + 2, proto bude dávat výstup jako 3.

Když provedete výše uvedený kód, budete mít následující výstup.

Výstup :

  • Výraz je: 3 (protože budou přidána čísla 1 + 2 a budou sloužit jako výstup)

Prohlášení o řízení toku:

JSP poskytuje sílu Java, která má být vložena do aplikace. V programování JSP můžeme používat všechna API a stavební bloky Javy včetně příkazů řízení toku, které zahrnují rozhodování a příkazy smyčky.

Níže jsou popsány dva typy příkazů řízení toku;

  1. Prohlášení o rozhodování
  2. Prohlášení o smyčce

Prohlášení o rozhodování:

Výrok rozhodování v JSP je založen na tom, zda je sada podmínek pravdivá nebo nepravdivá. Prohlášení se bude chovat odpovídajícím způsobem.

Níže jsou popsány dva typy rozhodovacích prohlášení:

  1. Pokud - jinak
  2. přepínač

JSP If-else

Příkaz "If else" je základem všech příkazů řízení toku a říká programu, aby provedl určitou část kódu, pouze pokud je konkrétní test vyhodnocen jako true.

Tato podmínka se používá k testování více než jedné podmínky, zda jsou pravdivé nebo nepravdivé.

  • Pokud je splněna první podmínka, provede se „if block“ a
  • pokud je nepravdivý, provede se „else block“

Syntaxe příkazu if - else :

If(test condition){//Block of statements}else{//Block of statements}

V tomto příkladu

Budeme testovat podmínku „if else“ tím, že vezmeme proměnnou a zkontrolujeme hodnotu, pokud se proměnná shoduje s tím, co je inicializováno:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP2 <%! int měsíc = 5; %><% if (month == 2) {%> Je únor <%} else {%> Libovolný měsíc kromě února <%}%>

Vysvětlení kódu:

  • Řádek kódu 10: Proměnná s názvem měsíc je ve značkách výrazů inicializována na 5
  • Řádek kódu 11: Ve značkách EL je podmínka „if“, která uvádí, že pokud je měsíc roven 2 (podmínka se zde testuje jako true nebo false)
  • Řádek kódu 12: Pokud je splněna podmínka, že proměnná měsíc je 2, bude se tisknout do výstupního proudu
  • Řádek kódu 13-15: Pokud výše uvedená podmínka if selže, bude přesunuta do jiné části pro všechny ostatní případy, kdy se příkaz vytiskne do výstupního proudu a podmínka je uzavřena

Když provedete výše uvedený kód, budete mít následující výstup.

Výstup:

  • Protože měsíc, který máme, je 5, což se nerovná # 2 (únor). Proto máme výstup „Libovolný měsíc kromě února“ (měsíc je zmíněn jako 5, proto jsou prováděny další)

Přepínač JSP

Tělo příkazu switch je nazýváno jako „switch block“.

  • Pouzdro přepínače se používá ke kontrole počtu možných cest provedení.
  • Přepínač lze použít se všemi datovými typy
  • Přepínací příkazy obsahují více než jeden případ a jeden výchozí případ
  • Vyhodnotí výraz a poté provede všechny příkazy následující za shodným případem

Syntaxe příkazu switch :

switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
  • Blok přepínače začíná jedním parametrem, kterým je operátor, kterému je třeba předat a
  • Pak existují různé případy, které poskytují podmínku a podle toho, co se shoduje s operátorem, který je proveden.

V níže uvedeném příkladu

Definovali jsme proměnnou týden, a to se shoduje s případem, podle toho, co je pravda. V tomto případě je týden 2, proto se shoduje 2. případ a výstup je úterý:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP3 <%! int týden = 2; %><% přepínač (týden) {případ 0:out.println ("neděle");přestávka;případ 1:out.println ("pondělí");přestávka;případ 2:out.println ("úterý");přestávka;případ 3:out.println ("středa");přestávka;případ 4:out.println ("čtvrtek");přestávka;případ 5:out.println ("pátek");přestávka;výchozí:out.println („sobota“);}%>

Vysvětlení kódu:

  • Řádek kódu 10: Proměnná s názvem týden je ve značkách výrazů inicializována na 2
  • Řádek kódu 11: Ve značkách EL se spouští případ přepínání, kde je jako parametr předán týden
  • Řádek kódu 12 - 29: Byly zmíněny všechny případy od případu 0 do případu 5, kde je hodnota parametru týdne porovnána s případy a podle toho je vytištěn výstup. V tomto případě je hodnota 2, proto se v tomto případě provede případ 2. Zde „out“ je třída JSP, která zapisuje výstupní proud pro generovanou odpověď, a „println“ je metoda této třídy.
  • Řádek kódu 30-32: Pokud výše uvedené případy selžou, přesune se do výchozí části a provede se, kde se příkaz vytiskne do výstupního proudu a podmínka je uzavřena

Když provedete výše uvedený kód, budete mít následující výstup.

Výstup:

  • Výstupem je v tomto případě úterý, protože se nazývá druhý případ.

Prohlášení o smyčce

JSP pro smyčku

Používá se k iteraci prvků pro určitou podmínku a má tři parametry.

  • Inicializuje se proměnné počítadlo
  • Podmínka do provedení smyčky
  • Počítadlo musí být zvýšeno

Syntaxe smyčky:

For(inti=0;i

V tomto příkladu

Máme smyčku, která iteruje, dokud není počítadlo menší než dané číslo:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP4 <%! int num = 5; %><% out.println ("Čísla jsou:");pro (int i = 0; i 

Vysvětlení kódu:

  • Řádek kódu 10: Proměnná s názvem "num" je inicializována na 5 ve značkách výrazu
  • Řádek kódu 11-14: Ve značkách EL je „out“ třída JSP a „println“ je metoda, která tiskne ve výstupním proudu a je spuštěna smyčka for, která má tři parametry:
    • Proměnná i je inicializována na 0,
    • Je dána podmínka, kde i být menší než lokální proměnná num,
    • A já se zvýší při každé iteraci smyčky.

V těle "forloop" existuje třída JSP, která tiskne do výstupního proudu pomocí metody println, kde tiskneme proměnnou i.

Když provedete výše uvedený kód, budete mít následující výstup.

Výstup:

  • Výstupní čísla jsou 0 1 2 3 4. V tomto příkladu dáváme podmínku, že dokud není počitadlo menší než rovno proměnné, musí se provést smyčka „for“. Číslo je 5, takže smyčka začne od 0 do 4 (5krát). Proto výstup.

JSP While smyčka

Používá se k iteraci prvků, kde má jeden parametr podmínky.

Syntax:

While(i

V tomto příkladu

Máme smyčku while, která bude iterovat, dokud nebude den větší než rovná počitadlu:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP5 <%! int den = 2; int i = 1; %><% while (day> = i) {if (day == i) {out.println ("Je to pondělí");přestávka;}i ++;}%>

Vysvětlení kódu:

  • Řádek kódu 10: Proměnná s názvem i je ve značkách výrazů inicializována na 1 a den je 2
  • Řádek kódu 11-17: Ve značkách EL bude iterace „while loop“, dokud nebudeme mít nastavenou podmínku, jako kdyby byl den větší nebo roven proměnné i. (den> = i)

    Uvnitř toho je „if podmínka“ (den se rovná i) a „if podmínka“ je pravdivá, pak vytiskne výstupní proud a opustí smyčku while, jinak se proměnná i zvýší a smyčka iteruje.

Když spustíme kód, budeme mít následující výstup

Výstup je:

  • Výstupem tohoto kódu bude „jeho pondělí“.

Provozovatelé JSP

Operátoři JSP podporují většinu svých aritmetických a logických operátorů, které jsou podporovány javou ve značkách jazyka EL (Expression Language).

Níže jsou uvedeny často používané operátory:

Následují operátoři:

. Otevřete vlastnost fazole nebo položku Map
[] Přístup k poli nebo prvku List
() Seskupte dílčí výraz, abyste změnili pořadí vyhodnocení
+ Přidání
- Odečtení nebo negace hodnoty
* Násobení
/ nebo div Divize
% nebo mod Modulo (zbytek)
== nebo ekv Test rovnosti
! = nebo ne Test nerovnosti
Test na méně než
> nebo gt Test na větší než
<= nebo le Otestujte, zda je menší nebo rovno
> = nebo ge Otestujte, zda je větší nebo rovno
&& nebo a Vyzkoušejte logické AND
|| nebo nebo Vyzkoušejte logické NEBO
! nebo ne Unární booleovský doplněk
Prázdný Vyzkoušejte prázdné hodnoty proměnných

V tomto příkladu

  • Deklarujeme dvě proměnné num1 a num2 a poté vezmeme proměnnou num3, kde pomocí operátoru JSP + přidáme num1 a num2 a dostaneme num3.
  • Potom zkontrolujeme podmínku, zda num3 není rovno 0 pomocí operátorů JSP (! =,>) A
  • Pak vezměte další proměnnou num4 vynásobením dvou num1 a num2, dostaneme num4.

Všechna tato čísla by měla být vytištěna jako náš výstup:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP6 <% int num1 = 10; int num2 = 50;int num3 = num1 + num2;if (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("Číslo 4 je" + num4);out.println ("Číslo 3 je" + num3);}%>

Vysvětlení kódu:

  • Řádek kódu 10: Proměnná s názvem num1 je inicializována na 10 a num2 na 50 ve značkách výrazů
  • Řádek kódu 11: Proměnná num3 je součtem čísel num1 a num2, kde používáme operátor sčítání
  • Řádek kódu 12-16: Ve značkách EL jsme použili podmínku OR, což je logický operátor a aritmetické operátory, abychom zkontrolovali, zda je num3 větší než 0 v podmínce if. OR se použije, když je splněna jedna podmínka, v takovém případě vstoupí do „if case“, kde vynásobíme dvě čísla „num1“ a „num2“ a dostaneme výstup „num4“ a vytiskne výstupní proud.

Když provedete výše uvedený kód, budete mít následující výstup.

Výstup:

  • První výstup je Number 4 is 500 (variable num4 which is num1 * num2)
  • Druhý výstup je Number 3 is 60 (variable num3 which num1 + num2)

Souhrn:

  • Jazyk JSP Expression Language (EL) usnadňuje přístup k aplikaci pro data uložená v komponentách javabeans.
  • Umožňuje také vytvářet výrazy, které jsou aritmetické i logické.
  • V rámci značek EL můžeme použít celá čísla. Čísla s plovoucí desetinnou čárkou, řetězce a logické hodnoty.
  • V JSP můžeme také použít smyčky a rozhodovací příkazy pomocí EL tagů