home  |  suche  |  kontakt/johner  |  institut 
studierende  |  tech-docs  |  mindmailer 

Java Server Pages (JSP)

Java Server Pages erweitern wie Servlets die Fähigkeit eines Webservers. Sie basieren auf dem Servlet-API und dienen hauptsächlich der Erzeugung von XML- und HTML-Clients. Im Gegensatz zu Servlets erlauben es JSP HTML-Dokumente mit einer Programmiersprache zu kombinieren. Damit ergibt sich eine strikte Aufgabentrennung im Sinne der Design-Pattern.
1. HTML für das GUI-Design
2. Java Programmierung für die Ablauflogik
Wenn der Designer mit einer Seite und dem Ablaufplan fertig ist, so beginnt die eigentliche Arbeit des Java Entwicklers. Dieser verbindet nun die einzelnen Teile der Website beispielsweise über eine JavaBean.
Hierbei beruft man sich auf folgende Skriptelemente:


1) Scriplet
2)Expression
3)Derklarationen
4)Direktiven
5) Java Beans

Das enthält eine JSP-Datei

JSP-Dateien können wie HTML-Seiten in einem üblichen Text-Editor erstellt werden.Neben dem statischen Inhalten, wie HTML, enthalten JSPs noch Skriptelemente die nachfolgend aufgelistet sind.

Skripletemente:

1) Scriplets

Syntax:

 

Variante 1:
<% Java-Code %>
Variante 2:
<jsp: scriplet> Java-Code </jsp:scriplet>

 



Meistens verwendet man die erste Variante, da Sie kürzer und daher auch weniger fehleranfällig ist. Aber dennoch muss man sagen, dass beide Varianen äquivalent sind. Des Weiteren muss man sich darüber im klaren sein, dass bei der Verwendung von JSPs Servlets verwendet werden. Denn eine JSP wird impizit in ein Servlet umgewandelt.Innerhalb der Scriplets kann man sogar auf vordefinierte Objekte zugreifen, wie beispielsweise Session.

2) Expressions

Syntax:

 

1.Variante:
<% = text %>
2.Variante:
<jsp: expression> text </jsp:expression>

 


Zum besseren Verständis kann man sich klar machen das hinter folgendem Ausdruck "<%=" immer dieser Ausdruck steht: "<% out.write".

3) Deklarationen

Syntax:

 

1.Variante:
<%! int a = 3 %>
2.Variante:
<jsp: declaration> Java-Code </jsp:declaration>

 



Deklarationen verwendet man, um Klassen- bzw. Instanzvariablen zu definieren. Oder anderst ausgedrückt: Man definiert Variablen deren Gültigkeit außerhalb der Service Methoden gelten sollen.

4) Direktiven

Syntax:

 

1.Variante:
<%@ NameDirektive attribut1="wert1" attribut2="wert2"...%>
2.Variante:
<jsp: directive NameDirective attribit1="wert1" attribut2="wert2"...></jsp:directive>

 

 

Es gibt unterschiedliche Arten von Direktiven. Hier wollen wir einmal nur auf die wichtigsten eingehen.Page-Direktiven: 1)Zum Erben bzw 2)Importieren von Klassen1)<%@ page import = "java.util.*"%>2)<% page extends = "htwg.CollectionAusleser" %>Include Direktiven: Zum Einbinden von Dateien <%@ include file = "namen.txt"Achtung: Da die Textdatei eingelesen und deren Inhalt in die JSP-Datei hineinkompiliert wird werden Textänderungen erst nach der vollständigen Neugenerierung der Website übernommen!