Oznaka JSP elemenata

โšก Pametni saลพetak

JSP elementi Strukture oznaka omoguฤ‡uju programerima ugradnju Java izravno na stranicu putem deklaracija, skriptleta, izraza i oznaka komentara, omoguฤ‡ujuฤ‡i stvaranje varijabli, izvrลกavanje logike, dinamiฤki izlaz i ฤitljivu dokumentaciju unutar jedne datoteke prikazane na posluลพitelju.

  • ๐Ÿ“ Oznaka deklaracije: Oznaka <%! %> deklarira varijable i metode na razini klase servleta, izvan metode usluge.
  • ๏ธ Oznaka skriptleta: Oznaka <% %> smjeลกta Java naredbe koje se izvrลกavaju unutar _jspservice() na svaki zahtjev klijenta.
  • ๐Ÿ”ข Oznaka izraza: Oznaka <%= %> procjenjuje aritmetiฤki ili logiฤki izraz i zapisuje njegov rezultat na izlaz.
  • ๐Ÿ’ฌ Oznaka komentara: Oznaka <%โ€“ โ€“%> skriva biljeลกke iz spremnika i preglednika, keeping kod dokumentiran i ฤist.
  • ๐Ÿš€ Pokreni na posluลพitelju: Potpuna JSP stranica je zapakirana u WAR datoteku i postavljena na web posluลพitelj kao ลกto je JBoss.
  • ๐Ÿ“ Struktura direktorija: JSP datoteke nalaze se izvan WEB-INF-a, dok konfiguracijske i biblioteฤne datoteke ostaju unutar mape WEB-INF.

JSP oznake

U ovom vodiฤu nauฤit ฤ‡emo osnovne oznake JSP-a i kako dodati komentare u JSP. Uz to ฤ‡emo takoฤ‘er izraditi JSP i pokrenuti taj JSP na posluลพitelju.

JSP deklaracija

  • Oznaka deklaracije je dio Java kod za deklariranje varijabli, metoda i klasa. Ako deklariramo varijablu ili metodu unutar oznake deklaracije, to znaฤi da je deklaracija napravljena unutar klase servleta, ali izvan servisne metode.
  • Moลพemo deklarirati statiฤki ฤlan, varijablu instance (moลพemo deklarirati broj ili niz) i metode unutar deklaracijske oznake.

Sintaksa deklaracijske oznake:

<%!  Dec var  %>

Ovdje je Dec var metoda ili varijabla unutar oznake deklaracije.

Primjer:

U ovom primjeru koristit ฤ‡emo deklaracijske oznake

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

Objaลกnjenje koda:

Code Redak 10: Ovdje koristimo oznaku deklaracije za inicijalizaciju broja varijabli na 10.

Kada izvrลกite gornji kod, dobit ฤ‡ete sljedeฤ‡i izlaz:

JSP deklaracija

Izlaz:

Varijabla koja je deklarirana u oznaci deklaracije ispisuje se kao izlaz.

JSP skripta

  • Scriptlet oznaka omoguฤ‡uje pisanje Java kod u JSP datoteku.
  • JSP spremnik premjeลกta izjave u metodi _jspservice() dok generira servlet iz jsp-a.
  • Za svaki zahtjev klijenta poziva se servisna metoda JSP-a, stoga se kod unutar Scriptleta izvrลกava za svaki zahtjev.
  • Scriptlet sadrลพi java kod koji se izvrลกava svaki put kada se pozove JSP.

Sintaksa oznake Scriptlet:

<% java code %>

Ovdje <%%> oznake su oznake skripti i unutar njih moลพemo postaviti java kod.

Primjer:

U ovom primjeru uzimamo Scriptlet oznake koje ukljuฤuju java kod.

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

Objaลกnjenje koda:

Code Redak 10-14: U Scriptlet oznakama gdje uzimamo dvije varijable num1 i num2. Uzima se treฤ‡a varijabla num3 koja se zbraja kao num1 i num2. Izlaz je num3.

Kada izvrลกite kod, dobit ฤ‡ete sljedeฤ‡i izlaz:

JSP skripta

Izlaz:

Izlaz za broj skriptleta je 50 ลกto je zbrajanje num1 i num2.

JSP izraz

  • Oznaka izraza procjenjuje izraz smjeลกten u nju.
  • Pristupa podacima pohranjenim u pohranjenoj aplikaciji.
  • Omoguฤ‡uje stvaranje izraza poput aritmetiฤkih i logiฤkih.
  • Proizvodi JSP stranicu bez skripti.

Sintaksa:

<%= expression %>

Ovdje je izraz aritmetiฤki ili logiฤki izraz.

Primjer:

U ovom primjeru koristimo izraznu oznaku

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

Objaลกnjenje koda:

Code Redak 12: Ovdje koristimo izrazne oznake gdje koristimo izraz mnoลพenjem dva broja, tj. num1 i num 2, a zatim dodavanjem treฤ‡eg broja, tj. num3.

Kada izvrลกite gornji kod, dobit ฤ‡ete sljedeฤ‡i izlaz:

JSP izraz

Izlaz:

Broj izraza je 120 gdje mnoลพimo dva broja num1 i num2 i zbrajamo taj broj s treฤ‡im brojem.

JSP Komentari

Komentari su oni kada JSP spremnik ลพeli ignorirati odreฤ‘ene tekstove i izjave.

Kada ลพelimo sakriti odreฤ‘eni sadrลพaj, onda ga moลพemo dodati u odjeljak za komentare.

Sintaksa:

<% -- JSP Comments %>

Njegove se oznake koriste za komentiranje u JSP-u i zanemaruju ih JSP spremnik.

Ovo je HTML komentar koji preglednik zanemaruje

Primjer:

U ovom primjeru koristimo JSP komentare

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

Objaลกnjenje koda:

Code Redak 10: Ovdje dodajemo JSP komentare kodu kako bismo objasnili ลกto kod ima. JSP spremnik ga je zanemario

Kada izvrลกite gornji kod, dobit ฤ‡ete sljedeฤ‡i izlaz:

JSP Komentari

Izlaz:

Dobivamo izlaz koji se ispisuje metodom println. Spremnik zanemaruje komentare

Stvaranje jednostavne JSP stranice

  • JSP stranica ima ugraฤ‘eno HTML tijelo Java kod u njega
  • Stvaramo jednostavnu JSP stranicu koja ukljuฤuje deklaracije, skripte, izraze, oznake komentara.

Primjer:

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

Objaลกnjenje koda:

Code Redak 1: Ovdje koristimo direktive kao ลกto su jezik, contentType i pageEncoding. Jezik je Java a tip sadrลพaja je tekst/html sa standardnim skupom znakova ISO 8859. Kodiranje stranice je standardni skup znakova.

Code Redak 11: Ovdje koristimo JSP komentare za dodavanje komentara u JSP

Code Redak 14: Ovdje deklariramo varijable num12 i num32 inicijalizirajuฤ‡i s 12.

Code Redak 15: Ovdje koristimo izraz u kojem mnoลพimo dva broja num12 i num32.

Code Redak 16: Ovdje dohvaฤ‡amo danaลกnji datum pomoฤ‡u objekta datuma.

Kada izvrลกite gornji kod, dobit ฤ‡ete sljedeฤ‡i izlaz

Stvaranje jednostavne JSP stranice

Izlaz:

Tiskamo ovdje,

  • Ovo je guru JSP primjer.
  • Broj je num12*num32 (12*12).
  • Danaลกnji datum je trenutni datum

Kako pokrenuti jednostavnu JSP stranicu

  • JSP se moลพe izvoditi na web posluลพiteljima ili aplikacijskim posluลพiteljima.
  • Ovdje ฤ‡emo koristiti web-posluลพitelj i moลพemo ga postaviti na posluลพitelj tako da ga ukljuฤimo u ratnu aplikaciju.
  • Moลพemo izraditi JSP u aplikaciji (rat).

Ovo je aplikacija koja ima sljedeฤ‡u strukturu direktorija, a aplikacija se mora izgraditi.

Pokreni jednostavnu JSP stranicu

Ova se aplikacija mora izgraditi, a sljedeฤ‡a ฤ‡e se poruka pojaviti nakon ลกto je izgradnja uspjeลกna:

Pokreni jednostavnu JSP stranicu

Nakon ลกto je aplikacija izgraฤ‘ena, aplikacija se mora pokrenuti na posluลพitelju.

Da biste pokrenuli JSP na web posluลพitelju, desnom tipkom miลกa kliknite projekt IDE-a (pomraฤenje koristi se u ovom sluฤaju) i postoji mnogo opcija. Odaberite opciju pokretanja na posluลพitelju. Prikazan je na snimci zaslona u nastavku;

Iz dijagrama su objaลกnjene sljedeฤ‡e toฤke:

  1. Postoje dvije moguฤ‡nosti odabira posluลพitelja ili ruฤnog dodavanja posluลพitelja ovoj aplikaciji. U ovom sluฤaju veฤ‡ smo dodali JBoss posluลพitelj u aplikaciju stoga odabiremo postojeฤ‡i posluลพitelj.
  2. Nakon ลกto odaberemo posluลพitelj opcija posluลพitelja prikazana je u toฤki 2 koji posluลพitelj ลพelimo odabrati. Na ovoj aplikaciji moลพe biti konfigurirano viลกe posluลพitelja. Moลพemo odabrati jedan posluลพitelj od svih tih opcija
  3. Nakon ลกto je ta opcija odabrana kliknite na gumb zavrลกi i aplikacija ฤ‡e se pokrenuti na tom posluลพitelju.

Pokreni jednostavnu JSP stranicu

Na donjim snimkama zaslona moลพete primijetiti da se naลก JSP program izvrลกava, a testna aplikacija rasporeฤ‘uje u JBoss posluลพitelj oznaฤeno u crvenom okviru.

Pokreni jednostavnu JSP stranicu

Struktura direktorija JSP-a

U strukturi direktorija postoji korijenska mapa koja ima mapu WEB-INF, koja sadrลพi sve konfiguracijske datoteke i datoteke biblioteke.

JSP datoteke su izvan mape WEB-INF

Struktura direktorija JSP-a

Struktura direktorija JSP-a

Primjer:

U ovom primjeru postoji testna aplikacija koja ima sljedeฤ‡u strukturu mape:

Struktura direktorija JSP-a

Pitanja i odgovori

Oznaka deklaracije smjeลกta varijable i metode na razinu klase servleta, izvan metode usluge. Oznaka skriptleta smjeลกta kรดd unutar metode usluge, tako da se ona izvrลกava na svaki zahtjev klijenta.

Ne. Mjeลกavina skriptleta Java s oznakama i teลกko ih je odrลพavati. Moderne JSP stranice favoriziraju Expression Language, JSTL i biblioteke oznaka, koje odvajaju prezentaciju od poslovne logike i poboljลกavaju ฤitljivost.

Oznaka izraza sadrลพi jednu vrijednost koju spremnik pretvara u niz znakova i zapisuje na izlaz. Dodavanje toฤke-zareza pretvara je u naredbu, ลกto nije valjano unutar oznaka izraza.

Umjetna inteligencija moลพe generirati deklaracije, skriptlete i oznake izraza iz obiฤnog opisa, oznaฤavati sintaktiฤke pogreลกke i predlagati ฤiลกฤ‡e alternative poput JSTL-a, hel-a.ping poฤetnici brลพe izraฤ‘uju ispravne JSP stranice.

Da. Alati umjetne inteligencije mogu refaktorirati stranice s puno skriptleta u Expression Language i JSTL, smanjujuฤ‡i ugraฤ‘ene JavaRazvojni programeri trebaju pregledati izlaz kako bi potvrdili da logika i ponaลกanje opsega ostaju isti.

Saลพmite ovu objavu uz: