Етикет на 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, следователно кодът вътре в Scriptlet се изпълнява за всяка заявка.
  • Скриптлетът съдържа 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 скриптлет

Изход:

Резултатът за номера на скрипта е 50, което е събиране на num1 и num2.

JSP израз

  • Етикетът Expression оценява израза, поставен в него.
  • Той има достъп до данните, съхранени в съхраненото приложение.
  • Позволява създаване на изрази като аритметични и логически.
  • Той създава JSP страница без скриптове.

Синтаксис:

<%= 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: Тук използваме директиви като език, contentType и pageEncoding. Езикът е Java и типът на съдържанието е text/html със стандартен набор от знаци ISO 8859. Кодирането на страницата е стандартен набор от знаци.

Code Ред 11: Тук използваме JSP коментари, за да добавим коментари към JSP

Code Ред 14: Тук декларираме променливи num12 и num32, инициализирайки с 12.

Code Ред 15: Тук използваме израз, в който умножаваме две числа num12 и num32.

Code Ред 16: Тук извличаме днешната дата с помощта на обект за дата.

Когато изпълните горния код, получавате следния изход

Създаване на проста 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 страници по-бързо.

Да. Инструментите с изкуствен интелект могат да рефакторират страници с много скриптлети в Expression Language и JSTL, намалявайки вградените JavaРазработчиците трябва да прегледат резултата, за да потвърдят, че логиката и поведението на обхвата остават същите.

Обобщете тази публикация с: