Что такое язык выражений (EL)?
Язык выражений (EL) - это механизм, который упрощает доступ к данным, хранящимся в компоненте Java bean и других объектах, таких как запрос, сеанс, приложение и т. Д. В JSP есть много операторов, которые используются в EL, например арифметические и логические операторы для выполнения выражение. Он был представлен в JSP 2.0.
В этом руководстве вы узнаете:
- Синтаксис JSP языка выражений (EL)
- JSP If-else
- Переключатель 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 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"%>Гуру JSP2 <%! int month = 5; %><% if (месяц == 2) {%> Сейчас февраль <%} еще {%> Любой месяц, кроме февраля <%}%>
Расшифровка кода:
- Строка кода 10: переменная с именем месяц инициализируется значением 5 в тегах выражения.
- Строка кода 11: в тегах EL есть «если условие», указывающее, что если месяц равен 2 (здесь условие проверяется как истинное или ложное)
- Строка кода 12: Если условие истинно, то есть месяц переменной равен 2, он будет печататься в потоке вывода.
- Строка кода 13-15: Если указанное выше условие if не выполняется, оно переместится в часть else для всех других случаев, когда оператор будет печататься в поток вывода, а условие закрывается.
Когда вы выполните приведенный выше код, вы получите следующий результат.
Выход:
- Поскольку у нас есть месяц 5, что не равно № 2 (февраль). Следовательно, у нас есть вывод «Любой месяц, кроме февраля» (месяц указан как 5, поэтому выполняются остальные)
Переключатель JSP
Тело оператора switch называется «блоком переключения».
- Корпус переключателя используется для проверки количества возможных путей выполнения.
- Переключатель можно использовать со всеми типами данных
- Операторы switch содержат более одного варианта и один вариант по умолчанию.
- Он оценивает выражение, затем выполняет все операторы, следующие за совпадающим регистром
Синтаксис оператора switch :
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"%>Гуру JSP3 <%! int week = 2; %><% switch (неделя) {case 0:out.println («Воскресенье»);перемена;Случай 1:out.println («Понедельник»);перемена;случай 2:out.println («вторник»);перемена;случай 3:out.println ("среда");перемена;случай 4:out.println («четверг»);перемена;случай 5:out.println («Пятница»);перемена;дефолт:out.println («суббота»);}%>
Пояснение к коду:
- Строка кода 10: переменная с именем week инициализируется значением 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"%>Гуру JSP4 <%! int num = 5; %><% out.println ("Числа:");for (int i = 0; iПояснение к коду:
- Строка кода 10: переменная с именем "num" инициализируется значением 5 в тегах выражений.
- Строка кода 11-14: В тегах EL «out» - это класс JSP, а «println» - это метод out, который печатает в потоке вывода, и запускается цикл for, который имеет три параметра:
- Переменная i инициализируется значением 0,
- Дано условие, когда i меньше, чем номер локальной переменной,
- И i увеличивается при каждой итерации цикла.
В теле «forloop» есть класс JSP, который печатает в выходной поток с помощью метода println, в котором мы печатаем переменную i.
Когда вы выполните приведенный выше код, вы получите следующий результат.
Выход:
- Выходные числа равны 0 1 2 3 4. В этом примере мы задаем условие, что до тех пор, пока счетчик не станет меньше значения переменной, должен выполняться цикл for. Число равно 5, поэтому цикл начнется с 0 и продолжится до 4 (5 раз). Отсюда вывод.
Цикл пока JSP
Он используется для итерации элементов, в которых он имеет один параметр условия.
Синтаксис:
While(iВ этом примере
У нас есть цикл while, который будет повторяться до тех пор, пока день не станет больше значения счетчика:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Гуру JSP5 <%! int day = 2; int я = 1; %><% while (day> = i) {if (day == i) {out.println («Его понедельник»);перемена;}i ++;}%>Расшифровка кода:
- Строка кода 10: переменная с именем i инициализируется значением 1, а день равен 2 в тегах выражения.
- Строка кода 11-17: В тегах EL есть «цикл while», который будет повторяться до тех пор, пока не будет установлено условие, как если бы день был больше или равен переменной i, будет истинным. (день> = i)
Внутри этого есть «если условие» (день равен i) и «если условие» истинно, тогда он распечатает выходной поток и выйдет из цикла while, иначе переменная i будет увеличена, и цикл будет повторяться.
Когда мы выполним код, у нас будет следующий вывод
Выход:
- Результатом этого кода будет «его понедельник».
Операторы JSP
Операторы JSP поддерживают большинство своих арифметических и логических операторов, которые поддерживаются java в тегах языка выражений (EL).
Ниже перечислены часто используемые операторы:
Ниже приведены операторы:
. Доступ к свойству bean-объекта или записи на карте [] Доступ к массиву или элементу списка () Сгруппируйте часть выражения, чтобы изменить порядок оценки + Добавление - Вычитание или отрицание значения * Умножение / или div Разделение % или мод По модулю (остаток) == или уравнение Проверка на равенство ! = или ne Тест на неравенство <или lt Тест на менее чем > или gt Тест на более чем <= или le Проверить на меньше или равно > = или ge Проверить на большее или равное && или и Проверка на логическое И || или или Тест на логическое ИЛИ ! или нет Унарное логическое дополнение Пустой Проверка на пустые значения переменных В этом примере
- Мы объявляем две переменные num1 и num2, а затем берем переменную num3, где мы используем оператор JSP + by, чтобы сложить num1 и num2 и получить num3.
- Затем мы проверяем условие, не равно ли num3 0, используя операторы JSP (! =,>) И
- Затем возьмите другую переменную num4, умножив два num1 и num2, мы получим num4.
Все эти числа должны быть распечатаны как наш результат:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Гуру JSP6 <% int num1 = 10; int num2 = 50;int num3 = num1 + num2;if (num3! = 0 || num3> 0) {int num4 = число1 * число2;out.println («Число 4 равно» + num4);out.println («Число 3 равно» + num3);}%>Расшифровка кода:
- Строка кода 10: переменная с именем num1 инициализируется значением 10, а значение num2 - 50 в тегах выражения.
- Строка кода 11: переменная num3 представляет собой сумму num1 и num2, где мы используем оператор сложения
- Строка кода 12–16: в тегах EL мы использовали условие ИЛИ, которое является логическим оператором и арифметическими операторами, чтобы проверить, больше ли num3 0 в условии if. ИЛИ используется, когда выполняется какое-либо одно условие, в этом случае он войдет в «случай if», где мы умножаем два числа «num1» и «num2» и получаем результат в «num4», и он распечатает выходной поток.
Когда вы выполните приведенный выше код, вы получите следующий результат.
Выход:
- Первый вывод: число 4 - 500 (переменная num4, которая равна num1 * num2)
- Второй вывод: номер 3 - 60 (переменная num3, которая num1 + num2)
Резюме:
- Язык выражений JSP (EL) упрощает доступ к приложению для данных, хранящихся в компонентах javabeans.
- Это также позволяет создавать выражения, которые являются как арифметическими, так и логическими.
- В тегах EL мы можем использовать целые числа. Числа с плавающей запятой, строки и логические значения.
- В JSP мы также можем использовать циклы и операторы принятия решений с помощью тегов EL.