Тег елементів JSP

⚡ Розумний підсумок

Структури тегів JSP Elements дозволяють розробникам вбудовувати Java безпосередньо на сторінку через теги оголошень, скриптлетів, виразів та коментарів, що дозволяє створювати змінні, виконувати логіку, динамічний вивід та читабельну документацію в одному файлі, що відтворюється на сервері.

  • ???? Тег декларації: Тег <%! %> оголошує змінні та методи на рівні класу сервлета, поза методом сервісу.
  • ️ Тег скриптлета: Тег <% %> розміщує Java оператори, що виконуються всередині _jspservice() для кожного запиту клієнта.
  • 🔢 Тег виразу: Тег <%= %> обчислює арифметичний або логічний вираз і записує його результат у вивід.
  • ???? Тег коментаря: Тег <%– –%> приховує нотатки від контейнера та браузера, зберігаючиping код задокументований та чистий.
  • ???? Запустити на сервері: Повна JSP-сторінка упаковується у WAR-файл та розгортається на веб-сервері, такому як JBoss.
  • 📁 Структура каталогу: JSP-файли знаходяться поза папкою WEB-INF, тоді як файли конфігурації та бібліотеки залишаються всередині папки WEB-INF.

Теги JSP

У цьому підручнику ми вивчимо основні теги JSP і як додавати коментарі в JSP. Разом з цим ми також створимо JSP і запустимо цей JSP на сервері.

Декларація JSP

  • Тег оголошення є частиною Java код для оголошення змінних, методів і класів. Якщо ми оголошуємо змінну або метод всередині тегу оголошення, це означає, що оголошення зроблено всередині класу сервлета, але поза межами методу служби.
  • Ми можемо оголосити статичний член, змінну екземпляра (можна оголосити число або рядок) і методи всередині тегу оголошення.

Синтаксис тегу оголошення:

<%!  Dec var  %>

Тут Dec var — це метод або змінна всередині тегу оголошення.

приклад:

У цьому прикладі ми будемо використовувати теги оголошення

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Declaration Tag</title>
</head>
<body>
<%! int count =10; %>
<% out.println("The Number is " +count); %>
</body>
</html>

Пояснення коду:

Code Лінія 10: Тут ми використовуємо тег оголошення для ініціалізації лічильника змінної до 10.

Коли ви виконуєте наведений вище код, ви отримуєте такий результат:

Декларація JSP

вихід:

Змінна, яка оголошена в тезі оголошення, друкується як вивід.

Скриптлет JSP

  • Тег скриптлет дозволяє писати Java код у файл JSP.
  • Контейнер JSP переміщує оператори в методі _jspservice() під час генерації сервлета з jsp.
  • Для кожного запиту клієнта викликається сервісний метод JSP, отже, код у скриптлеті виконується для кожного запиту.
  • Скриптлет містить код Java, який виконується кожного разу, коли викликається JSP.

Синтаксис тегу Scriptlet:

<% java code %>

Тут теги <%%> є тегами скриптів, і в них ми можемо розмістити код Java.

приклад:

У цьому прикладі ми беремо теги Scriptlet, які містять код Java.

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Scriplet</title>
</head>
<body>
<% int num1=10;
   int num2=40;
   int num3 = num1+num2;
   out.println("Scriplet Number is " +num3);
%>
</body>
</html>

Пояснення коду:

Code Рядки 10-14: У тегах Scriptlet, де ми беремо дві змінні num1 і num2. Береться третя змінна num3, яка складається як num1 і num2. Результатом є num3.

Коли ви виконуєте код, ви отримуєте такий результат:

Скриптлет JSP

вихід:

Вихід для Scriptlet Number становить 50, що є додаванням num1 і num2.

Вираз JSP

  • Тег Expression оцінює вираз, розміщений у ньому.
  • Він отримує доступ до даних, що зберігаються в збереженій програмі.
  • Це дозволяє створювати арифметичні та логічні вирази.
  • Він створює сторінку JSP без сценаріїв.

Синтаксис:

<%= expression %>

Тут вираз є арифметичним або логічним виразом.

приклад:

У цьому прикладі ми використовуємо тег Expression

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Expression</title>
</head>
<body>
<% out.println("The expression number is "); %>
<% int num1=10; int num2=10; int num3 = 20; %>
<%= num1*num2+num3 %>
</body>
</html>

Пояснення коду:

Code Лінія 12: Тут ми використовуємо теги виразів, де ми використовуємо вираз шляхом множення двох чисел, тобто num1 і num 2, а потім додавання третього числа, тобто num3.

Коли ви виконуєте наведений вище код, ви отримуєте такий результат:

Вираз JSP

вихід:

Число виразу дорівнює 120, де ми множимо два числа num1 і num2 і додаємо це число до третього числа.

Коментарі JSP

Коментарі — це те, коли контейнер JSP хоче ігнорувати певні тексти та заяви.

Якщо ми хочемо приховати певний вміст, ми можемо додати його до розділу коментарів.

Синтаксис:

<% -- JSP Comments %>

Ці теги використовуються для коментування в JSP і ігноруються контейнером JSP.

Це коментар HTML, який ігнорується браузером

приклад:

У цьому прикладі ми використовуємо коментарі JSP

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Comments</title>
</head>
<body>
<%-- Guru Comments section --%>
<% out.println("This is comments example"); %>

</body>
</html>

Пояснення коду:

Code Лінія 10: Тут ми додаємо коментарі JSP до коду, щоб пояснити, що містить код. Його ігнорує контейнер JSP

Коли ви виконуєте наведений вище код, ви отримуєте такий результат:

Коментарі JSP

вихід:

Ми отримуємо результат, який друкується методом println. Коментарі ігноруються контейнером

Створення простої сторінки JSP

  • Сторінка JSP містить тіло HTML Java код у нього
  • Ми створюємо просту сторінку JSP, яка містить оголошення, сценарії, вирази, теги коментарів.

приклад:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru JSP Example</title>
</head>
<body>

<%-- This is a JSP example with scriplets, comments , expressions --%>
<% out.println("This is guru JSP Example"); %>
<% out.println("The number is "); %>
<%! int num12 = 12; int num32 = 12; %>
<%= num12*num32 %>
Today's date: <%= (new java.util.Date()).toLocaleString()%>
</body>
</html>

Пояснення коду:

Code Лінія 1: Тут ми використовуємо такі директиви, як language, contentType і pageEncoding. Мова є Java тип вмісту – text/html зі стандартним набором символів ISO 8859. Кодування сторінки – стандартний набір символів.

Code Лінія 11: Тут ми використовуємо коментарі JSP, щоб додати коментарі до JSP

Code Лінія 14: Тут ми оголошуємо змінні num12 і num32, які ініціалізуються 12.

Code Лінія 15: Тут ми використовуємо вираз, де ми множимо два числа num12 і num32.

Code Лінія 16: Тут ми отримуємо сьогоднішню дату за допомогою об’єкта date.

Коли ви виконуєте наведений вище код, ви отримуєте наступний результат

Створення простої сторінки JSP

вихід:

Ми друкуємо тут,

  • Це приклад guru JSP.
  • Число num12*num32 (12*12).
  • Сьогоднішня дата є поточною

Як запустити просту сторінку JSP

  • JSP можна запускати на веб-серверах або серверах додатків.
  • Тут ми будемо використовувати веб-сервер, і ми можемо розгорнути його на сервері, включивши його у військову програму.
  • Ми можемо створити JSP у програмі (війна).

Це програма, яка має наступну структуру каталогів, і її потрібно створити.

Запустіть просту сторінку JSP

Цю програму потрібно зібрати, і після успішної побудови з’явиться таке повідомлення:

Запустіть просту сторінку JSP

Після створення програми програму потрібно запустити на сервері.

Щоб запустити JSP на веб-сервері, клацніть правою кнопкою миші на проекті IDE (затемнення використовується в цьому випадку), і є багато варіантів. Виберіть варіант запуску на сервері. Це показано на скріншоті нижче;

На діаграмі пояснюються наступні моменти:

  1. Є два варіанти: вибрати сервер або вручну додати сервер до цієї програми. У цьому випадку ми вже додали сервер JBoss до програми, тому ми вибираємо наявний сервер.
  2. Після того, як ми виберемо сервер, параметр сервера буде показано в пункті 2, який сервер ми хочемо вибрати. У цій програмі може бути налаштовано кілька серверів. Ми можемо вибрати один сервер із усіх цих варіантів
  3. Після вибору цього параметра натисніть кнопку «Готово», і програма запуститься на цьому сервері.

Запустіть просту сторінку JSP

На наведених нижче знімках екрана ви можете помітити, що наша програма JSP виконується, а тестова програма розгортається в Сервер JBoss позначені в червоному полі.

Запустіть просту сторінку JSP

Структура каталогів JSP

У структурі каталогу є коренева папка, яка містить папку WEB-INF, яка містить усі конфігураційні файли та файли бібліотек.

Файли JSP знаходяться поза папкою WEB-INF

Структура каталогів JSP

Структура каталогів JSP

приклад:

У цьому прикладі є тестова програма, яка має таку структуру папок:

Структура каталогів JSP

Поширені запитання

Тег оголошення розміщує змінні та методи на рівні класу сервлета, поза методом сервісу. Тег скриптлета розміщує код всередині методу сервісу, тому він виконується для кожного запиту клієнта.

Ні. Суміш скриптлетів Java з розміткою та їх важко підтримувати. Сучасні JSP-сторінки віддають перевагу мові виразів Expression Language, JSTL та бібліотекам тегів, які відокремлюють представлення від бізнес-логіки та покращують читабельність.

Тег виразу містить одне значення, яке контейнер перетворює на рядок і записує у вивід. Додавання крапки з комою перетворює його на оператор, що є недійсним всередині тегів виразу.

Штучний інтелект може генерувати теги оголошень, скриптлетів та виразів з простого опису, позначати синтаксичні помилки та пропонувати чистіші альтернативи, такі як JSTL, hel.ping новачки швидше створюють правильні JSP-сторінки.

Так. Інструменти штучного інтелекту можуть рефакторувати сторінки з великою кількістю скриптлетів у мову експресій та JSTL, зменшуючи вбудовані JavaРозробникам слід переглянути вивід, щоб переконатися, що логіка та поведінка області видимості залишаються незмінними.

Підсумуйте цей пост за допомогою: