Учебное пособие по языку выражений JSP (EL)

Содержание:

Anonim

Что такое язык выражений (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, включая операторы потока управления, которые включают в себя принятие решений и операторы цикла.

Ниже описаны два типа операторов управления потоком;

  1. Заявления о принятии решений
  2. Заявления цикла

Заявления о принятии решений:

Заявление о принятии решения в JSP основано на том, является ли набор условий истинным или ложным. Заявление будет вести себя соответствующим образом.

Ниже описаны два типа заявлений о принятии решений:

  1. Если еще
  2. выключатель

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.