Značka JSP Elements

⚡ Chytré shrnutí

Struktury tagů JSP Elements umožňují vývojářům vkládat Java přímo do stránky pomocí deklarací, skriptletů, výrazů a komentářů, což umožňuje vytváření proměnných, provádění logiky, dynamický výstup a čitelnou dokumentaci v rámci jednoho souboru vykresleného na serveru.

  • ???? Štítek prohlášení: Značka <%! %> deklaruje proměnné a metody na úrovni třídy servletu, mimo metodu služby.
  • ⚙️ Štítek skriptletu: Tag <% %> umisťuje Java příkazy, které se spouštějí uvnitř _jspservice() při každém požadavku klienta.
  • 🔢 Výrazový štítek: Značka <%= %> vyhodnocuje aritmetický nebo logický výraz a zapisuje jeho výsledek na výstup.
  • 💬 Štítek komentáře: Značka <%– –%> skryje poznámky z kontejneru a prohlížeče, uchováváping kód zdokumentovaný a čistý.
  • ???? Spustit na serveru: Kompletní JSP stránka je zabalena do souboru WAR a nasazena na webový server, jako je JBoss.
  • 📁 Struktura adresáře: Soubory JSP se nacházejí mimo složku WEB-INF, zatímco konfigurační soubory a soubory knihoven zůstávají uvnitř složky WEB-INF.

JSP tagy

V tomto tutoriálu se naučíme základní značky JSP a jak přidávat komentáře do JSP. Spolu s tím také vytvoříme JSP a spustíme toto JSP na serveru.

Prohlášení JSP

  • Značka deklarace je součástí Java kód pro deklaraci proměnných, metod a tříd. Pokud deklarujeme proměnnou nebo metodu uvnitř tagu deklarace, znamená to, že deklarace je provedena uvnitř třídy servletu, ale mimo metodu služby.
  • Uvnitř tagu deklarace můžeme deklarovat statický člen, proměnnou instance (může deklarovat číslo nebo řetězec) a metody.

Syntaxe značky deklarace:

<%!  Dec var  %>

Zde Dec var je metoda nebo proměnná uvnitř značky deklarace.

Příklad:

V tomto příkladu použijeme deklarační značky

<%@ 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>

Vysvětlení kódu:

Code Řádek 10: Zde používáme značku deklarace pro inicializaci počtu proměnných na 10.

Když spustíte výše uvedený kód, získáte následující výstup:

Prohlášení JSP

Výstup:

Proměnná, která je deklarována v deklaračním tagu, je vytištěna jako výstup.

JSP skriptlet

  • Tag Scriptlet umožňuje zápis Java kód do souboru JSP.
  • Kontejner JSP přesouvá příkazy v metodě _jspservice() při generování servletu z jsp.
  • Pro každý požadavek klienta je vyvolána servisní metoda JSP, proto se kód uvnitř Scriptletu spustí pro každý požadavek.
  • Skriptlet obsahuje kód java, který se spustí při každém vyvolání JSP.

Syntaxe značky Scriptlet:

<% java code %>

Zde <%%> tagy jsou tagy scripty a do nich můžeme umístit java kód.

Příklad:

V tomto příkladu používáme značky Scriptlet, které uzavírají kód 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>

Vysvětlení kódu:

Code Řádek 10–14: Ve značkách Scriptlet, kde bereme dvě proměnné num1 a num2 . Vezme se třetí proměnná num3, která se sčítá jako num1 a num2. Výstupem je num3.

Když spustíte kód, získáte následující výstup:

JSP skriptlet

Výstup:

Výstup pro číslo skriptletu je 50, což je součet čísel 1 a 2.

JSP výraz

  • Značka Expression vyhodnocuje výraz v ní umístěný.
  • Přistupuje k datům uloženým v uložené aplikaci.
  • Umožňuje vytvářet výrazy jako aritmetické a logické.
  • Vytváří stránku JSP bez skriptů.

Syntaxe:

<%= expression %>

Zde je výrazem aritmetický nebo logický výraz.

Příklad:

V tomto příkladu používáme výraz tag

<%@ 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>

Vysvětlení kódu:

Code Řádek 12: Zde používáme výrazové značky, kde používáme výraz vynásobením dvou čísel, tj. num1 a num 2, a přidáním třetího čísla, tj. num3.

Když spustíte výše uvedený kód, získáte následující výstup:

JSP výraz

Výstup:

Číslo výrazu je 120, kde násobíme dvě čísla num1 a num2 a přičteme toto číslo ke třetímu čísle.

Komentáře JSP

Komentáře jsou ty, kdy kontejner JSP chce ignorovat určité texty a příkazy.

Pokud chceme skrýt určitý obsah, můžeme jej přidat do sekce komentářů.

Syntaxe:

<% -- JSP Comments %>

Značky his se používají pro komentáře v JSP a kontejner JSP je ignoruje.

Toto je HTML komentář, který prohlížeč ignoruje

Příklad:

V tomto příkladu používáme komentáře 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>

Vysvětlení kódu:

Code Řádek 10: Zde ke kódu přidáváme komentáře JSP, abychom vysvětlili, co kód obsahuje. Kontejner JSP jej ignoruje

Když spustíte výše uvedený kód, získáte následující výstup:

Komentáře JSP

Výstup:

Získáme výstup, který se vytiskne metodou println. Komentáře kontejner ignoruje

Vytvoření jednoduché stránky JSP

  • Stránka JSP má začleněné tělo HTML Java kód do něj
  • Vytváříme jednoduchou stránku JSP, která obsahuje deklarace, skripty, výrazy, značky komentářů.

Příklad:

<%@ 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>

Vysvětlení kódu:

Code Řádek 1: Zde používáme direktivy jako jazyk, contentType a pageEncoding. Jazyk je Java a typ obsahu je text/html se standardní znakovou sadou ISO 8859. Kódování stránky je standardní znakovou sadou.

Code Řádek 11: Zde používáme komentáře JSP k přidávání komentářů do JSP

Code Řádek 14: Zde deklarujeme proměnné num12 a num32 inicializované s 12.

Code Řádek 15: Zde používáme výraz, kde násobíme dvě čísla num12 a num32.

Code Řádek 16: Zde načítáme dnešní datum pomocí objektu date.

Když spustíte výše uvedený kód, získáte následující výstup

Vytvoření jednoduché stránky JSP

Výstup:

Tiskneme tady,

  • Toto je příklad guru JSP.
  • Číslo je num12*num32 (12*12).
  • Dnešní datum je aktuální datum

Jak spustit jednoduchou stránku JSP

  • JSP lze provozovat na webových serverech nebo aplikačních serverech.
  • Zde budeme používat webový server a můžeme jej nasadit na server, který jej uzavře do válečné aplikace.
  • JSP můžeme vytvořit v aplikaci (válka).

Jedná se o aplikaci, která má následující adresářovou strukturu a aplikaci je nutné sestavit.

Spusťte jednoduchou stránku JSP

Tato aplikace musí být sestavena a po úspěšném sestavení se zobrazí následující zpráva:

Spusťte jednoduchou stránku JSP

Poté, co je aplikace sestavena, musí být aplikace spuštěna na serveru.

Chcete-li spustit JSP na webovém serveru, klikněte pravým tlačítkem na projekt IDE (zatmění v tomto případě) a existuje mnoho možností. Vyberte možnost spuštění na serveru. Je to zobrazeno na snímku obrazovky níže;

Z diagramu jsou vysvětleny následující body:

  1. Existují dvě možnosti, buď vybrat server, nebo ručně přidat server do této aplikace. V tomto případě jsme do aplikace již přidali server JBoss, tedy vybereme stávající server.
  2. Jakmile vybereme server, v bodě 2 se zobrazí možnost serveru, který server chceme vybrat. V této aplikaci může být nakonfigurováno více serverů. Ze všech těchto možností můžeme vybrat jeden server
  3. Jakmile je tato možnost vybrána, klikněte na tlačítko Dokončit a aplikace se spustí na tomto serveru.

Spusťte jednoduchou stránku JSP

Na níže uvedených snímcích obrazovky si můžete všimnout, že se náš program JSP spustí a testovací aplikace je nasazena server JBoss označené v červeném poli.

Spusťte jednoduchou stránku JSP

Adresářová struktura JSP

V adresářové struktuře je kořenová složka, která má složku WEB-INF, která obsahuje všechny konfigurační soubory a soubory knihoven.

Soubory JSP jsou mimo složku WEB-INF

Adresářová struktura JSP

Adresářová struktura JSP

Příklad:

V tomto příkladu je testovací aplikace, která má strukturu složek následující:

Adresářová struktura JSP

Nejčastější dotazy

Deklarační tag umisťuje proměnné a metody na úroveň třídy servletu, mimo metodu service. Tag skriptlet umisťuje kód do metody service, takže se spustí při každém požadavku klienta.

Ne. Směs Scripletů Java s značkovacím kódem a jejich údržba je obtížná. Moderní JSP stránky upřednostňují Expression Language, JSTL a knihovny tagů, které oddělují prezentaci od obchodní logiky a zlepšují čitelnost.

Výrazový tag obsahuje jednu hodnotu, kterou kontejner převede na řetězec a zapíše do výstupu. Přidání středníku ji změní na příkaz, který je uvnitř výrazových tagů neplatný.

Umělá inteligence dokáže generovat deklarace, skripty a výrazy z prostého popisu, označovat syntaktické chyby a navrhovat čistší alternativy, jako je JSTL, hel.ping Začátečníci vytvářejí správné JSP stránky rychleji.

Ano. Nástroje umělé inteligence dokáží refaktorovat stránky s velkým množstvím skriptletů do jazyka Expression Language a JSTL, čímž se sníží počet vložených prvků. JavaVývojáři by měli zkontrolovat výstup a ověřit, zda logika a chování rozsahu zůstávají stejné.

Shrňte tento příspěvek takto: