JSP Expression Language (EL) Opplæring

Innholdsfortegnelse:

Anonim

Hva er Expression Language (EL)?

Expression Language (EL) er en mekanisme som forenkler tilgjengeligheten til dataene som er lagret i Java-bønnekomponenter og andre objekter som forespørsel, økt og applikasjon, etc. Det er mange operatører i JSP som brukes i EL som aritmetiske og logiske operatører for å utføre en uttrykk. Den ble introdusert i JSP 2.0

I denne veiledningen vil du lære-

  • JSP Syntax of Expression Language (EL)
  • JSP Hvis-annet
  • JSP-bryter
  • JSP For løkke
  • JSP mens løkke
  • JSP-operatører

JSP Syntax of Expression Language (EL)

Syntaks for EL : $ (uttrykk)

  • I JSP blir det som finnes i klammeparentesene evaluert ved kjøretid sendt til utgangsstrømmen.
  • Uttrykket er et gyldig EL-uttrykk og det kan blandes med en statisk tekst og kan kombineres med annet uttrykk for å danne større uttrykk.

For å få en bedre ide om hvordan uttrykk fungerer i JSP, vil vi se eksemplet nedenfor.

I dette eksemplet vil vi se hvordan EL brukes som operator for å legge til to tall (1 + 2) og få henholdsvis utdataene.

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP1  Uttrykk er: $ {1 + 2};

Forklaring av kode:

  • Kodelinje 11: Uttrykksspråk (EL) er satt der vi legger til to tall 1 + 2, derav vil det gi utdata som 3.

Når du utfører koden ovenfor, vil du ha følgende utdata.

Utgang :

  • Uttrykk er: 3 (Ettersom tall 1 + 2 vil bli lagt til og tjene som utgang)

Uttalelser om flytkontroll:

JSP gir kraften til Java som skal bygges inn i applikasjonen. Vi kan bruke alle API-ene og byggesteinene i Java i JSP-programmering, inkludert kontrollflytsetninger som inkluderer beslutningstaking og loop-setningene.

Det er to typer uttalelser om strømningskontroll beskrevet nedenfor;

  1. Uttalelser om beslutningstaking
  2. Loop Statements

Beslutningsuttalelser:

Beslutningsuttalelse i JSP er basert på om vilkårene er sanne eller falske. Uttalelsen vil oppføre seg deretter.

Det er to typer beslutningsuttalelser beskrevet nedenfor:

  1. Hvis - ellers
  2. bytte om

JSP Hvis-annet

"Hvis annet" -utsagnet er grunnleggende for alle uttalelser om kontrollflyt, og det ber programmet om å utføre den bestemte delen av koden bare hvis den aktuelle testen evalueres til sann.

Denne tilstanden brukes til å teste for mer enn en tilstand om de er sanne eller falske.

  • Hvis den første tilstanden er oppfylt, utføres "hvis blokkering" og
  • hvis den er falsk, blir "annet blokk" utført

Syntaks for if - else uttalelse :

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

I dette eksemplet,

Vi skal teste "hvis annet" -tilstand ved å ta variabel og sjekke verdien om variabelen samsvarer med hva den er initialisert:

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP2 <%! int måned = 5; %><% if (måned == 2) {%> Det er februar <%} annet {%> Enhver annen måned enn februar <%}%>

Forklaring av koden:

  • Kodelinje 10: Variabel som heter måned initialiseres til 5 i uttrykkstaggene
  • Kodelinje 11: I EL-kodene er det "hvis betingelse" som sier at hvis måneden er lik 2 (tilstand testes her som sant eller usant)
  • Kodelinje 12: Hvis vilkåret er sant at variabel måned er 2, vil den skrives ut til utgående strøm
  • Kodelinje 13-15: Hvis det ovennevnte hvis betingelsen mislykkes, vil den flytte til en annen del for alle andre tilfeller der uttalelsen blir skrevet ut til utgangsstrømmen og tilstanden er lukket

Når du utfører koden ovenfor, vil du ha følgende utdata.

Produksjon:

  • Siden måneden vi har er 5, som ikke er lik # 2 (februar). Derfor har vi utdata "Enhver annen måned enn februar" (måned er nevnt som 5, derfor ellers er utført)

JSP-bryter

Kroppen til bryteruttalelsen kalles en "bryterblokk".

  • Brytervesken brukes til å sjekke antall mulige kjøringsveier.
  • En bryter kan brukes med alle datatyper
  • Bytteoppgavene inneholder mer enn ett tilfelle og ett standardtilfelle
  • Den evaluerer uttrykket og utfører deretter alle utsagnene som følger matchende sak

Syntaks for bryteruttalelse :

switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
  • Bryterblokk begynner med en parameter, som er operatøren som må sendes og
  • Deretter er det forskjellige saker som gir tilstand og hvilken som passer med operatøren den saken blir utført.

I eksemplet nedenfor,

Vi har definert en variabel uke, og den blir matchet med saken, avhengig av hva som er sant. I dette tilfellet er uke 2, og dermed samsvares andre tilfelle, og utdata er tirsdag:

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP3 <%! int uke = 2; %><% bytte (uke) {sak 0:out.println ("søndag");gå i stykker;sak 1:out.println ("mandag");gå i stykker;tilfelle 2:out.println ("tirsdag");gå i stykker;tilfelle 3:out.println ("onsdag");gå i stykker;tilfelle 4:out.println ("torsdag");gå i stykker;tilfelle 5:out.println ("fredag");gå i stykker;misligholde:out.println ("lørdag");}%>

Forklaring av kode:

  • Kodelinje 10: Variabel med navn uke initialiseres til 2 i uttrykkstaggene
  • Kodelinje 11: I EL-kodene startes brytervesken der uken sendes som parameter
  • Kodelinje 12 - 29: Alle tilfeller har blitt nevnt startende fra tilfelle 0 til tilfelle 5 der verdien av ukesparameter samsvares med sakene, og følgelig blir utskriften skrevet ut. I dette tilfellet er verdien 2, derfor vil tilfelle 2 utføres i dette tilfellet. Her er "out" klassen til JSP som skriver utgangsstrømmen for generert respons og "println" er en metode for den klassen.
  • Kodelinje 30-32: Hvis de ovennevnte tilfellene mislykkes, flyttes den til standarddel og blir utført, der uttalelsen skrives ut til utgangsstrømmen og tilstanden er lukket

Når du utfører koden ovenfor, vil du ha følgende utdata.

Produksjon:

  • Produksjonen i dette tilfellet er tirsdag som 2. sak heter.

Loop Statements

JSP For løkke

Den brukes til å iterere elementene for en viss tilstand, og den har tre parametere.

  • Variabel teller initialiseres
  • Tilstand til sløyfen må utføres
  • Telleren må økes

For loop-syntaks:

For(inti=0;i

I dette eksemplet,

Vi har for loop som gjentas til telleren er mindre enn det angitte tallet:

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP4 <%! int num = 5; %><% out.println ("Tallene er:");for (int i = 0; i 

Forklaring til koden:

  • Kodelinje 10: Variabelen med navnet "num" initialiseres til 5 i uttrykkstaggene
  • Kodelinje 11-14: I EL-kodene er "ut" klassen for JSP og "println" er metoden for hvilke utskrifter i utgangsstrømmen og for loop startes som har tre parametere:
    • Variabel i initialiseres til 0,
    • Betingelse er gitt der jeg skal være mindre enn lokal variabel antall,
    • Og jeg økes hver gang sløyfen itererer.

I kroppen til "forloop" er det en klasse av JSP som skriver ut i utgangsstrømmen ved hjelp av metoden println der vi skriver ut variabelen i.

Når du utfører koden ovenfor, vil du ha følgende utdata.

Produksjon:

  • Utgangstall er 0 1 2 3 4. I dette eksemplet gir vi den betingelsen at til telleren er mindre enn lik en variabel, må "for loop" utføres. Antallet er 5, slik at løkken starter fra 0 og løper til 4 (5 ganger). Derav produksjonen.

JSP mens løkke

Den brukes til å gjenta elementene der den har en parameter for tilstanden.

Syntaks:

While(i

I dette eksemplet,

Vi har en stundsløyfe som vil gjenta til dagen er større enn lik telleren:

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP5 <%! int dag = 2; int i = 1; %><% mens (dag> = i) {hvis (dag == i) {out.println ("Its Monday");gå i stykker;}i ++;}%>

Forklaring av koden:

  • Kodelinje 10: Variabelen med navnet i initialiseres til 1 og dag er 2 i uttrykkstaggene
  • Kodelinje 11-17: I EL-kodene er det "while loop" vil gjenta til vi har en betingelse satt som om dagen er større eller lik i variabelen vil være sant. (dag> = i)

    Innenfor det er "hvis betingelse" (dag er lik i) og "hvis tilstand" er sant, vil den skrive ut strømmen, og den vil gå ut mens sløyfen, ellers blir variabelen i trinn inkrementert og sløyfen itererer.

Når vi utfører koden, vil vi ha følgende utdata

Utgangen er:

  • Utgangen av denne koden vil være "sin mandag".

JSP-operatører

JSP Operators støtter de fleste av sine aritmetiske og logiske operatorer som støttes av java innen ELS-koder.

Ofte brukte operatører er nevnt nedenfor:

Følgende er operatørene:

. Få tilgang til en bønneiendom eller kartoppføring
[] Få tilgang til en matrise eller listeelement
() Gruppere et underuttrykk for å endre evalueringsrekkefølgen
+ Addisjon
- Subtraksjon eller negasjon av en verdi
* Multiplikasjon
/ eller div Inndeling
% eller mod Modulo (resten)
== eller lik Test for likeverd
! = eller ne Test for ulikhet
Test for mindre enn
> eller gt Test for større enn
<= eller le Test for mindre enn eller lik
> = eller ge Test for større enn eller lik
&& eller og Test for logisk AND
|| eller eller Test for logisk ELLER
! eller ikke Unary boolsk komplement
Tømme Test for tomme variable verdier

I dette eksemplet,

  • Vi erklærer to variabler num1 og num2 og tar deretter en variabel num3, der vi bruker JSP-operator + by for å legge til num1 og num2 og få num3.
  • Deretter sjekker vi en tilstand om num3 ikke er lik 0 ved å bruke JSP-operatorer (! =,>) Og
  • Ta deretter en annen variabel num4 ved å multiplisere to num1 og num2 får vi num4.

Disse alle tallene skal skrives ut som vår utskrift:

<% @ sidespråk = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru JSP6 <% int num1 = 10; int num2 = 50;int num3 = num1 + num2;hvis (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("Nummer 4 er" + num4);out.println ("Nummer 3 er" + num3);}%>

Forklaring av koden:

  • Kodelinje 10: Variabelen som heter num1 initialiseres til 10 og num2 til 50 i uttrykkstaggene
  • Kodelinje 11: Variabelen num3 er summen av num1 og num2 der vi bruker tilleggsoperator
  • Kodelinje 12-16: I EL-kodene har vi brukt en ELLER-tilstand som er logisk operator og aritmetiske operatorer for å sjekke om num3 er større enn 0 i if-tilstanden. ELLER brukes når en hvilken som helst betingelse er sant, i et slikt tilfelle vil den gå inn i "if case" der vi multipliserer to tall "num1" og "num2" og får utdata i "num4" og det vil skrive ut strømmen.

Når du utfører koden ovenfor, vil du ha følgende utdata.

Produksjon:

  • Den første utgangen er nummer 4 er 500 (variabel num4 som er num1 * num2)
  • Den andre utgangen er nummer 3 er 60 (variabel num3 som num1 + num2)

Sammendrag:

  • JSP Expression Language (EL) gjør det enkelt å få tilgang til applikasjonen for dataene som er lagret i javabeans-komponentene.
  • Det tillater også å skape uttrykk som er både aritmetiske og logiske.
  • Innenfor EL-koder kan vi bruke heltall. Flytende tall, strenger og boolske verdier.
  • I JSP kan vi også bruke sløyfer og beslutningsuttalelser ved hjelp av EL-koder