Какво е език за изразяване (EL)?
Expression Language (EL) е механизъм, който опростява достъпността на данните, съхранявани в компонента на Java bean и други обекти като заявка, сесия и приложение и т.н. Има много оператори в JSP, които се използват в EL като аритметични и логически оператори за извършване на израз. Въведена е в JSP 2.0
В този урок ще научите -
- JSP синтаксис на език за изразяване (EL)
- JSP Ако е друго
- JSP превключвател
- JSP за цикъл
- JSP докато цикъл
- JSP оператори
JSP синтаксис на език за изразяване (EL)
Синтаксис на EL : $ (израз)
- В JSP, каквото и да е в скобите, се оценява по време на изпълнение, изпратено към изходния поток.
- Изразът е валиден EL израз и може да се смесва със статичен текст и да се комбинира с друг израз, за да се образува по-голям израз.
За да получите по-добра представа за това как работи изразът в JSP, ще видим по-долу пример.
В този пример ще видим как EL се използва като оператор за добавяне на две числа (1 + 2) и получаване на изхода съответно.
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Гуру JSP1 Изразът е: $ {1 + 2};
Обяснение на кода:
- Кодов ред 11: Езикът на израза (EL) е зададен, където добавяме две числа 1 + 2, следователно ще даде изход като 3.
Когато изпълните горния код, ще получите следния изход.
Изход :
- Изразът е: 3 (Тъй като числата 1 + 2 ще бъдат добавени и ще служат като изход)
Изявления за контрол на потока:
JSP предоставя силата на Java, която трябва да бъде вградена в приложението. Можем да използваме всички приложни програмни интерфейси (API) и изграждащи блокове на Java в JSP програмиране, включително инструкции за контролен поток, които включват вземане на решения и циклични инструкции.
Има два вида изявления за контрол на потока, описани по-долу;
- Изявления за вземане на решения
- Циклични изявления
Декларации за вземане на решения:
Декларацията за вземане на решения в JSP се основава на това дали зададеното условие е вярно или невярно. Изявлението ще се държи съответно.
Има два вида изявления за вземане на решения, описани по-долу:
- Ако - друго
- превключвател
JSP Ако е друго
Операторът "If else" е основен за всички оператори на контролния поток и казва на програмата да изпълни определена секция от код само ако конкретният тест оцени като истина.
Това условие се използва за проверка на повече от едно условие дали са верни или неверни.
- Ако първото условие е вярно, тогава "if block" се изпълнява и
- ако е невярно, тогава се изпълнява "else block"
Синтаксис на оператора if - else :
If(test condition){//Block of statements}else{//Block of statements}
В този пример
Ще тестваме условието "if else", като вземем променлива и проверим стойността, ако променливата съвпада с това, което е инициализирана:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP2 <%! int месец = 5; %><% if (месец == 2) {%> Февруари <%} друго {%> Всеки месец, различен от февруари <%}%>
Обяснение на кода:
- Кодов ред 10: Променлива с име месец се инициализира до 5 в маркерите на израза
- Кодов ред 11: В етикетите EL има "if условие", в което се посочва, че ако месецът е равен на 2 (тук условието се тества като true или false)
- Код ред 12: Ако условието е вярно, че променливата месец е 2, тя ще се отпечата в изходния поток
- Код ред 13-15: Ако горното, ако условието не успее, то ще се премести в друга част за всички останали случаи, когато изявлението ще се отпечата в изходния поток и условието е затворено
Когато изпълните горния код, ще получите следния изход.
Изход:
- Тъй като месецът, който имаме, е 5, което не е равно на # 2 (февруари). Следователно имаме изхода "Всеки месец, различен от февруари" (месецът се споменава като 5, следователно се изпълняват други)
JSP превключвател
Тялото на оператора за превключване се нарича „блок за превключване“.
- Превключвателят се използва за проверка на броя на възможните пътища за изпълнение.
- Превключвателят може да се използва с всички типове данни
- Операторите за превключване съдържат повече от един случай и един случай по подразбиране
- Той оценява израза, след което изпълнява всички изрази след съответстващия случай
Синтаксис за оператор за превключване :
switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
- Блокът за превключване започва с един параметър, който е операторът, който трябва да бъде предаден и
- Тогава има различни случаи, които предоставят условие и което и да е съвпадение с оператора, който случай се изпълнява.
В долния пример,
Определихме променлива седмица и тя се съчетава със случая, което е вярно. В този случай седмицата е 2, следователно 2- ри случай е съчетан, а изходът е вторник:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP3 <%! int седмица = 2; %><% превключване (седмица) {случай 0:out.println ("неделя");почивка;случай 1:out.println ("Понеделник");почивка;случай 2:out.println ("вторник");почивка;случай 3:out.println ("сряда");почивка;случай 4:out.println ("четвъртък");почивка;случай 5:out.println ("петък");почивка;по подразбиране:out.println ("събота");}%>
Обяснение на кода:
- Кодов ред 10: Променлива с име седмица се инициализира на 2 в маркерите на израза
- Кодов ред 11: В етикетите EL се стартира случаят на превключване, където се предава седмица като параметър
- Кодова линия 12 - 29: Всички случаи са споменати, започвайки от случай 0 до случай 5, където стойността на параметъра седмица е съчетана с случаите и съответно изходът се отпечатва. В този случай стойността е 2, следователно случай 2 ще бъде изпълнен в този случай. Тук "out" е класът на JSP, който пише изходния поток за генериран отговор, а "println" е метод от този клас.
- Кодов ред 30-32: Ако горните всички случаи се провалят, той ще се премести към част по подразбиране и ще бъде изпълнен, където изявлението ще се отпечата в изходния поток и условието е затворено
Когато изпълните горния код, ще получите следния изход.
Изход:
- Резултатът в този случай е вторник, както се нарича 2-ри случай.
Циклични изявления
JSP за цикъл
Използва се за итерация на елементите за определено състояние и има три параметъра.
- Инициализира се брояч на променливи
- Условие, докато цикълът трябва да бъде изпълнен
- Броячът трябва да бъде увеличен
За синтаксис на цикъл:
For(inti=0;iВ този пример
Имаме за цикъл, който итерира, докато броячът е по-малък от даденото число:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP4 <%! int num = 5; %><% out.println ("Номерата са:");за (int i = 0; iОбяснение за кода:
- Кодов ред 10: Променливата с име "num" се инициализира до 5 в маркерите на израза
- Кодов ред 11-14: В етикетите EL "out" е класът на JSP, а "println" е методът за извеждане на кой печат в изходния поток и за цикъл за цикъл, който има три параметъра:
- Променлива i е инициализирана на 0,
- Дадено е условие, когато i да е по-малко от локалната променлива num,
- И аз се увеличава всеки път, повтарящ се цикъл.
В тялото на "forloop" има клас JSP, който печата в изходния поток, използвайки метода println, където отпечатваме променливата i.
Когато изпълните горния код, ще получите следния изход.
Изход:
- Изходните числа са 0 1 2 3 4. В този пример ние даваме условието, че докато броячът не е по-малък от равен на променлива, трябва да се изпълни "цикълът". Числото е 5, така че цикълът ще започне от 0 и ще продължи до 4 (5 пъти). Оттук и изходът.
JSP докато цикъл
Използва се за итерация на елементите, в които има един параметър на условието.
Синтаксис:
While(iВ този пример
Имаме цикъл while, който ще повтори до деня е по-голям от равен на брояча:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP5 <%! int ден = 2; int i = 1; %><% докато (ден> = i) {ако (ден == i) {out.println ("Понеделник е");почивка;}i ++;}%>Обяснение на кода:
- Кодов ред 10: Променливата с име i се инициализира на 1 и ден е 2 в маркерите на израза
- Кодов ред 11-17: В етикетите EL има "while цикъл", който ще се повтори, докато не зададем условие, сякаш денят е по-голям или равен на променливата i ще бъде истина. (ден> = i)
В рамките на това има "ако условие" (ден е равен на i) и "ако условието" е вярно, тогава той ще отпечата изходния поток и ще излезе от цикъла while, и променливата i се увеличава и цикълът се повтаря.
Когато изпълним кода, ще имаме следния изход
Изходът е:
- Резултатът от този код ще бъде "понеделник".
JSP оператори
JSP Operators поддържа повечето от своите аритметични и логически оператори, които се поддържат от java в рамките на етикетите на езика на израза (EL).
Често използваните оператори са посочени по-долу:
Следват операторите:
. Достъп до свойство на боб или запис на карта [] Достъп до масив или елемент Списък () Групирайте подизраз, за да промените реда за оценка + Събиране - Изваждане или отрицание на стойност * Умножение / или div Дивизия % или мод По модул (остатък) == или уравнение Тест за равенство ! = или ne Тест за неравенство <или lt Тест за по-малко от > или gt Тест за повече от <= или le Тествайте за по-малко или равно > = или ge Тест за по-голямо или равно && или и Тест за логическо И || или или Тест за логическо ИЛИ ! или не Унарско булево допълнение Празно Тест за празни стойности на променливите В този пример
- Декларираме две променливи num1 и num2 и след това вземаме променлива num3, където използваме JSP оператор + чрез добавяне на num1 и num2 и получаване на num3.
- След това проверяваме условие дали num3 не е равно на 0 с помощта на JSP оператори (! =,>) И
- След това вземете друга променлива num4 чрез умножаване на две num1 и num2 получаваме num4.
Всички тези числа трябва да бъдат разпечатани като наш изход:
<% @ 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;ако (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("Номер 4 е" + num4);out.println ("Номер 3 е" + num3);}%>Обяснение на кода:
- Кодов ред 10: Променлива с име num1 се инициализира на 10 и num2 на 50 в маркерите на израза
- Кодов ред 11: Променливата num3 е сума от num1 и num2, където използваме оператор за събиране
- Кодов ред 12-16: В етикетите EL използвахме условие ИЛИ, което е логичен оператор и аритметични оператори, за да проверим дали num3 е по-голямо от 0 в условието if. ИЛИ се използва, когато някое от условията е вярно, в такъв случай той ще влезе в "ако случай", когато умножаваме две числа "num1" и "num2" и получаваме изход в "num4" и той ще отпечата изходния поток.
Когато изпълните горния код, ще получите следния изход.
Изход:
- Първият изход е Номер 4 е 500 (променлива num4, която е num1 * num2)
- Вторият изход е Номер 3 е 60 (променлива num3 която num1 + num2)
Резюме:
- JSP Expression Language (EL) улеснява достъпа до приложението за данните, съхранявани в компонентите на javabeans.
- Той също така позволява да се създават изрази, които са едновременно аритметични и логически.
- В рамките на EL таговете можем да използваме цели числа. Числа с плаваща запетая, низове и булеви стойности.
- В JSP можем също да използваме цикли и изявления за вземане на решения с помощта на EL тагове