JSP Expression Language (EL) oktatóanyag

Tartalomjegyzék:

Anonim

Mi az a kifejezési nyelv (EL)?

Az Expression Language (EL) olyan mechanizmus, amely leegyszerűsíti a Java komponensekben tárolt adatok és más objektumok, például kérések, munkamenetek és alkalmazások stb. Tárolt adatainak hozzáférhetőségét. A JSP-ben számos olyan operátor található, amelyet EL-ben használnak, például számtani és logikai operátorok egy kifejezés. A JSP 2.0-ban vezették be

Ebben az oktatóanyagban megtanulja-

  • JSP kifejezési nyelv szintaxisa (EL)
  • JSP Ha-más
  • JSP kapcsoló
  • JSP For loop
  • JSP While loop
  • JSP Operátorok

JSP kifejezési nyelv szintaxisa (EL)

EL szintaxisa : $ (kifejezés)

  • A JSP-ben a zárójelek bármelyikét a kimeneti adatfolyamba küldött futás közben értékelik.
  • A kifejezés érvényes EL kifejezés, és keverhető statikus szöveggel, és kombinálható más kifejezéssel nagyobb kifejezés kialakításához.

Annak érdekében, hogy jobb képet kapjunk arról, hogyan működik a kifejezés a JSP-ben, az alábbi példát láthatjuk.

Ebben a példában meglátjuk, hogyan használják az EL-t operátorként két szám (1 + 2) hozzáadásához és a kimenet megszerzéséhez.

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP1  A kifejezés: $ {1 + 2};

A kód magyarázata:

  • 11. kódsor : Az expressziós nyelv (EL) beállítása, ahol két számot adunk hozzá 1 + 2-hez, ezért a kimenetet 3-ként adja meg.

A fenti kód végrehajtásakor a következő kimenetet kapja.

Kimenet :

  • Kifejezés: 3 (Mivel az 1 + 2 számok hozzáadódnak és kimenetként szolgálnak)

Áramlásszabályozási nyilatkozatok:

A JSP biztosítja a Java erejét az alkalmazásba ágyazáshoz. Használhatjuk a Java összes API-ját és építőelemeit a JSP programozásában, beleértve a döntéshozatalt és a ciklus utasításokat tartalmazó vezérlési folyamat utasításokat is.

Az alábbiakban kétféle áramlásszabályozási utasítás áll rendelkezésre;

  1. Döntési nyilatkozatok
  2. Hurok nyilatkozatok

Döntési nyilatkozatok:

A JSP döntési nyilatkozata azon alapszik, hogy a feltett feltétel igaz vagy hamis. A nyilatkozat ennek megfelelően fog viselkedni.

Az alábbiakban kétféle döntési nyilatkozatot lehet leírni:

  1. Ha más
  2. kapcsoló

JSP Ha-más

Az "if else" utasítás alapvető az összes vezérlési folyamat utasításban, és azt mondja a programnak, hogy csak akkor hajtsa végre a kód bizonyos részét, ha az adott teszt igaznak bizonyul.

Ezt a feltételt egynél több feltétel tesztelésére használják, hogy igazak vagy hamisak-e.

  • Ha az első feltétel igaz, akkor az "if block" végrehajtásra kerül, és
  • ha hamis, akkor az "else block" végrehajtásra kerül

Szintaxis az if - else utasításhoz :

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

Ebben a példában

Tesztelni fogjuk a "ha más" feltételt a változó felvételével és az érték ellenőrzésével, ha a változó megegyezik az inicializált értékkel:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP2 <%! int hónap = 5; %><% if (hónap == 2) {%> február <%} else {%> Február kivételével bármely hónapban <%}%>

A kód magyarázata:

  • 10. kódsor : A megnevezett hónap változóját 5-re inicializáljuk a kifejezés címkéiben
  • 11. kódsor: Az EL címkékben van egy "if feltétel", amely szerint ha a hónap egyenlő 2 (a feltétel itt igaz vagy hamis)
  • 12. kódsor: Ha a feltétel igaz, vagyis a változó hónap 2, akkor a kimeneti adatfolyamba fog nyomtatni
  • Kódsor 13-15: Ha a fenti meghibásodik, akkor a másik részre kerül, minden más esetben, amikor az utasítás a kimeneti adatfolyamba nyomtat és a feltétel zárva van

A fenti kód végrehajtásakor a következő kimenetet kapja.

Kimenet:

  • Mivel a hónapunk 5, ami nem egyenlő a 2. számmal (február). Ezért megkapjuk a "Bármely hónap, nem február" kimenetet (a hónapot 5-ként emlegetjük, ezért más végrehajtásra kerül)

JSP kapcsoló

A kapcsoló utasítás törzsét "kapcsoló blokkként" hívják.

  • A kapcsoló esetet a lehetséges végrehajtási utak számának ellenőrzésére használják.
  • A kapcsoló minden adattípushoz használható
  • A switch utasítások egynél több esetet és egy alapértelmezett esetet tartalmaznak
  • Kiértékeli a kifejezést, majd végrehajtja az összes állítást az egyezési eset után

Szintaktika a kapcsoló utasításhoz :

switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
  • A kapcsolóblokk egy paraméterrel kezdődik, amely az az operátor, amelyet át kell adni és
  • Ezután vannak különböző esetek, amelyek feltételeket nyújtanak, és amelyik megfelel az operátornak, az esetet végrehajtják.

Az alábbi példában

Meghatároztunk egy változó hetet, és összeegyeztetjük az esettel, amelyik igaz. Ebben az esetben a hét második, így a második eset egyezik, a kimenet pedig kedd:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP3 <%! int hét = 2; %><% váltás (hét) {0. eset:out.println ("vasárnap");szünet;1. eset:out.println ("hétfő");szünet;2. eset:out.println ("kedd");szünet;3. eset:out.println ("szerda");szünet;4. eset:out.println ("csütörtök");szünet;5. eset:out.println ("péntek");szünet;alapértelmezett:out.println ("szombat");}%>

A kód magyarázata:

  • 10. kódsor : A hét nevű változó 2-re inicializálódik a kifejezéscímkékben
  • 11. kódsor: Az EL címkéknél a kapcsolási eset akkor kezdődik, amikor a hét paraméterként átkerül
  • Kódsor 12 - 29: Az összes esetet megemlítettük a 0-tól az 5-ig, kezdve, amikor a hét paraméter értéke egyezik az esetekkel, és ennek megfelelően a kimenet kinyomtatásra kerül. Ebben az esetben az érték 2, ezért ebben az esetben a 2. eset kerül végrehajtásra. Itt az "out" a JSP osztálya, amely a generált válasz kimeneti adatfolyamát írja, a "println" pedig ennek az osztálynak a módszere.
  • Kódsor 30-32: Ha a fenti esetek sikertelenek, akkor az alapértelmezett részre kerül és végrehajtásra kerül, ahol az utasítás a kimeneti adatfolyamba nyomtat és a feltétel zárva van

A fenti kód végrehajtásakor a következő kimenetet kapja.

Kimenet:

  • A kimenet ebben az esetben kedd, mivel a 2. esetet hívják.

Hurok nyilatkozatok

JSP For loop

Az elemek iterálásához használják egy bizonyos feltételhez, és három paramétere van.

  • A változó számláló inicializálódik
  • Feltétel, amíg a ciklust végre kell hajtani
  • A számlálót növelni kell

A hurok szintaxisa esetén:

For(inti=0;i

Ebben a példában

Van egy ciklusunk, amely a számlálóig iterál, kevesebb, mint a megadott szám:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP4 <%! int szám = 5; %><% out.println ("A számok:");mert (int i = 0; i 

A kód magyarázata:

  • 10. kódsor : A "num" nevű változó 5-re inicializálódik a kifejezéscímkékben
  • Kódsor 11-14: Az EL címkékben az "out" a JSP osztálya, a "println" pedig az a módszer, amellyel a kimeneti adatfolyamba és a ciklusba történő nyomtatás indul, amelynek három paramétere van:
    • Az i változó inicializálása 0,
    • Feltétel van megadva, ahol i kisebb, mint a lokális változó,
    • És én minden alkalommal növekszik, amikor a hurok ismétlődik.

A "forloop" törzsében van egy JSP osztály, amely a println módszerrel nyomtat a kimeneti adatfolyamba, ahol az i változót nyomtatjuk.

A fenti kód végrehajtásakor a következő kimenetet kapja.

Kimenet:

  • A kimeneti számok 0 1 2 3 4. Ebben a példában azt a feltételt adjuk meg, hogy amíg a számláló kisebb lesz, mint egy változó, addig a "for ciklust" kell végrehajtani. A szám 5, így a hurok 0-tól indul és 4-ig (ötször) fut. Ezért a kimenet.

JSP While loop

Olyan elemek iterálására szolgál, amelyekben a feltétel egy paramétere van.

Szintaxis:

While(i

Ebben a példában

Van egy időzítő ciklusunk, amely addig fog ismétlődni, hogy a nap nagyobb legyen, mint a számlálóval megegyező:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP5 <%! int nap = 2; int i = 1; %><% while (nap> = i) {if (nap == i) {out.println ("Hétfője");szünet;}i ++;}%>

A kód magyarázata:

  • 10. kódsor : Az i nevű változó 1-re inicializálódik, a nap pedig 2 a kifejezéscímkékben
  • Kódsor 11-17: Az EL címkékben a "while loop" ismétlődik, amíg nem állítunk be olyan feltételt, mintha a nap nagyobb vagy egyenlő lenne az i változóval. (nap> = i)

    Ezen belül van "if feltétel" (a nap egyenlő az i-vel) és a "ha a feltétel" igaz, akkor kinyomtatja a kimeneti adatfolyamot, és kilép a i ciklusból, míg az i változó növekszik, és a ciklus megismétlődik.

Amikor végrehajtjuk a kódot, a következő kimenetet kapjuk

Kimenet:

  • Ennek a kódnak a kimenete "hétfője" lesz.

JSP Operátorok

A JSP Operators támogatja a legtöbb aritmetikai és logikai operátort, amelyeket a java támogat az expressz nyelvi (EL) tagekben.

Az alábbiakban a gyakran használt operátorokat említjük:

A következők az operátorok:

. Hozzáférés egy bab tulajdonsághoz vagy a Map bejegyzéshez
[] Tömb vagy Lista elem elérése
() Csoportosítson egy részkifejezést az értékelési sorrend megváltoztatásához
+ Kiegészítés
- Érték levonása vagy negálása
* Szorzás
/ vagy div Osztály
% vagy mod Modulo (maradék)
== vagy egyenértékű Teszt az egyenlőségre
! = vagy ne Tesztelje az egyenlőtlenséget
Teszt kevesebb, mint
> vagy gt Teszt nagyobb mint
<= vagy le Teszteljen kevesebbet vagy egyenlőt
> = vagy ge Tesztelje nagyobb vagy egyenlő
&& vagy és Teszt logikai ÉS
|| vagy vagy Logikai VAGY teszt
! vagy nem Unary Boolean-kiegészítés
Üres Tesztelje az üres változóértékeket

Ebben a példában

  • Két num1 és num2 változót deklarálunk, majd egy num3 változót veszünk fel, ahol a JSP + by operátort használjuk a num1 és a num2 hozzáadásához és a num3 lekéréséhez.
  • Ezután a JSP operátorok (! =,>) És segítségével ellenőrizzük, hogy a num3 nem egyenlő-e 0-val
  • Ezután vegyen egy másik num4 változót úgy, hogy megszorozza két num1 és num2 számot.

Ezeket az összes számot ki kell nyomtatni kimenetünkként:

<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP6 <% int num1 = 10; int num2 = 50;int szám3 = szám1 + szám2;if (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("A 4. szám" + szám4);out.println ("A 3. szám" + szám3);}%>

A kód magyarázata:

  • 10. kódsor : A num1 nevű változó 10-re, a num2 pedig 50-re inicializálódik a kifejezéscímkékben
  • 11. kódsor : A num3 változó a num1 és a num2 összege, ahol addíciós operátort használunk
  • Kódsor 12-16: Az EL tagekben egy OR feltételt használtunk, amely logikai operátor és számtani operátor, hogy ellenőrizzük, a num3 nagyobb-e 0-nál az if feltételben. Az OR-t akkor használjuk, ha bármelyik feltétel igaz, ilyen esetben beírja az "if case" -et, ahol két számot "num1" és "num2" szorzunk, és a kimenetet "num4" -be kapjuk, és kinyomtatja a kimeneti adatfolyamot.

A fenti kód végrehajtásakor a következő kimenetet kapja.

Kimenet:

  • Az első kimenet a 4. szám 500 (a num4 változó, amely a num1 * num2)
  • A második kimenet a 3. szám 60 (változó num3, amely num1 + num2)

Összegzés:

  • A JSP Expression Language (EL) megkönnyíti az alkalmazás elérését a javabeans komponensekben tárolt adatokhoz.
  • Lehetővé teszi számtani és logikai kifejezések létrehozását is.
  • Az EL tageken belül egész számokat használhatunk. Lebegőpontos számok, karakterláncok és logikai értékek.
  • A JSP-ben használhatunk ciklusokat és döntéshozó utasításokat is EL címkék segítségével