JSP Elements Tag
JSP tags
I denne tutorial lรฆrer vi de grundlรฆggende tags i JSP, og hvordan man tilfรธjer kommentarer til JSP. Sammen med dette vil vi ogsรฅ oprette en JSP og kรธre den JSP pรฅ serveren.
JSP-erklรฆring
- Et deklarationsmรฆrke er et stykke af Java kode til at deklarere variabler, metoder og klasser. Hvis vi erklรฆrer en variabel eller metode inde i declaration tag betyder det, at erklรฆringen er lavet inde i servlet-klassen, men uden for service-metoden.
- Vi kan erklรฆre et statisk medlem, en instansvariabel (kan erklรฆre et tal eller en streng) og metoder inde i deklarationstagget.
Syntaks for deklarationstag:
<%! Dec var %>
Her er Dec var metoden eller en variabel inde i deklarationsmรฆrket.
Eksempel:
I dette eksempel skal vi bruge deklarationsmรฆrkerne
<%@ 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>
Forklaring af koden:
Code Linje 10: Her bruger vi deklarationstag til at initialisere et variabeltรฆller til 10.
Nรฅr du udfรธrer ovenstรฅende kode fรฅr du fรธlgende output:
Output:
Variablen, som er deklareret i deklarationsmรฆrket, udskrives som output.
JSP scriptlet
- Scriptlet-tag gรธr det muligt at skrive Java kode til JSP-fil.
- JSP-beholder flytter sรฆtninger i _jspservice()-metoden, mens der genereres servlet fra jsp.
- For hver anmodning fra klienten bliver servicemetoden for JSP'en pรฅberรฅbt, hvorfor koden inde i Scriptlet udfรธres for hver anmodning.
- En scriptlet indeholder java-kode, der udfรธres hver gang JSP kaldes.
Syntaks for Scriptlet-tag:
<% java code %>
Her er <%%>-tags scriplet-tags, og i det kan vi placere java-kode.
Eksempel:
I dette eksempel tager vi Scriptlet-tags, som omslutter java-kode.
<%@ 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>
Forklaring af koden:
Code Linje 10-14: I Scriptlet-tags, hvor vi tager to variabler num1 og num2. Tredje variabel num3 tages, som summeres som num1 og num2. Outputtet er num3.
Nรฅr du udfรธrer koden, fรฅr du fรธlgende output:
Output:
Outputtet for Scriptlet-nummeret er 50, hvilket er en tilfรธjelse af num1 og num2.
JSP udtryk
- Expression tag evaluerer det udtryk, der er placeret i det.
- Den fรฅr adgang til de data, der er gemt i en gemt applikation.
- Det giver mulighed for at skabe udtryk som aritmetiske og logiske.
- Det producerer scriptfri JSP-side.
Syntaks:
<%= expression %>
Her er udtrykket det aritmetiske eller logiske udtryk.
Eksempel:
I dette eksempel bruger vi expression 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>
Forklaring af koden:
Code Linje 12: Her bruger vi udtryksmรฆrker, hvor vi bruger et udtryk ved at gange to tal dvs. num1 og num 2 og derefter tilfรธje det tredje tal, dvs. num3.
Nรฅr du udfรธrer ovenstรฅende kode, fรฅr du fรธlgende output:
Output:
Udtrykket tal er 120, hvor vi multiplicerer to tal num1 og num2 og lรฆgger det tal sammen med det tredje tal.
JSP kommentarer
Kommentarer er den, nรฅr JSP-containeren รธnsker at ignorere visse tekster og udsagn.
Nรฅr vi vil skjule bestemt indhold, kan vi tilfรธje det til kommentarfeltet.
Syntaks:
<% -- JSP Comments %>
Disse tags bruges til at kommentere i JSP og ignoreres af JSP-beholderen.
Dette er HTML-kommentar, som ignoreres af browseren
Eksempel:
I dette eksempel bruger vi JSP-kommentarer
<%@ 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>
Forklaring af koden:
Code Linje 10: Her tilfรธjer vi JSP-kommentarer til koden for at forklare, hvad kode har. Det er blevet ignoreret af JSP-beholderen
Nรฅr du udfรธrer ovenstรฅende kode fรฅr du fรธlgende output:
Output:
Vi fรฅr det output, der udskrives i println-metoden. Kommentarer ignoreres af container
Oprettelse af en simpel JSP-side
- En JSP-side har en HTML-tekst indbygget med Java kode ind i det
- Vi er ved at oprette en simpel JSP-side, som inkluderer erklรฆringer, skriftletter, udtryk, kommentarmรฆrker.
Eksempel:
<%@ 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>
Forklaring af koden:
Code Linje 1: Her bruger vi direktiver som sprog, contentType og pageEncoding. Sproget er Java og indholdstypen er tekst/html med standardtegnsรฆt ISO 8859. Sidekodning er standardtegnsรฆt.
Code Linje 11: Her bruger vi JSP-kommentarer til at tilfรธje kommentarer til JSP'en
Code Linje 14: Her erklรฆrer vi variable num12 og num32, der initialiserer med 12.
Code Linje 15: Her bruger vi et udtryk, hvor vi multiplicerer to tal num12 og num32.
Code Linje 16: Her henter vi dagens dato ved hjรฆlp af datoobjekt.
Nรฅr du udfรธrer ovenstรฅende kode, fรฅr du fรธlgende output
Output:
Vi trykker herovre,
- Dette er guru JSP eksempel.
- Nummeret er num12*num32 (12*12).
- Dagens dato er den aktuelle dato
Sรฅdan kรธrer du en simpel JSP-side
- JSP kan kรธres pรฅ webservere eller applikationsservere.
- Her vil vi bruge en webserver, og vi kan installere den pรฅ serveren, der omslutter den i en krigsapplikation.
- Vi kan oprette JSP i en applikation (krig).
Dette er en applikation, som har fรธlgende mappestruktur, og applikationen skal bygges.
Denne applikation skal bygges, og fรธlgende meddelelse vises, nรฅr opbygningen er vellykket:
Nรฅr applikationen er bygget, skal applikationen kรธres pรฅ serveren.
For at kรธre JSP pรฅ webserveren skal du hรธjreklikke pรฅ IDE-projektet (Eclipse brugt i dette tilfรฆlde), og der er mange muligheder. Vรฆlg muligheden for at kรธre pรฅ serveren. Det er vist pรฅ skรฆrmbilledet nedenfor;
Fra diagrammet er fรธlgende punkter forklaret:
- Der er to muligheder for enten at vรฆlge en server eller manuelt tilfรธje serveren til denne applikation. I dette tilfรฆlde har vi allerede tilfรธjet JBoss-serveren til applikationen, derfor vรฆlger vi den eksisterende server.
- Nรฅr vi har valgt serveren, vises serverindstillingen i punkt 2, hvilken server vi รธnsker at vรฆlge. Der kan vรฆre konfigureret flere servere pรฅ denne applikation. Vi kan vรฆlge รฉn server fra alle disse muligheder
- Nรฅr denne mulighed er valgt, skal du klikke pรฅ knappen Afslut, og applikationen kรธrer pรฅ den server.
I nedenstรฅende skรฆrmbilleder kan du bemรฆrke, at vores JSP-program bliver eksekveret, og testapplikationen implementeres i JBoss server markeret i det rรธde felt.
Directory Struktur af JSP
I mappestrukturen er der en rodmappe, som har mappen WEB-INF, som har alle konfigurationsfiler og biblioteksfiler.
JSP-filer er uden for WEB-INF-mappen
Directory struktur af JSP
Eksempel:
I dette eksempel er der testapplikation, som har mappestruktur og har fรธlgende:
Resumรฉ
- I denne artikel har vi lรฆrt om syntaktiske elementer som expression-tags, Scriptlet-tags, der forenkler kode i JSP.
- Brug af JSP-kommentarer.
- Vi har lavet en simpel JSP-side og fรฅet den til at kรธre pรฅ serveren.











