JSP: Java Server Pages

Werbung
SOTE2­2016­05­06.notebook
May 06, 2016
JSP: Java Server Pages
Servlets: Java­Code mit eingebettetem HTML
JSP: HTML mit eingebettetem Java­Code
Skriptelemente
1. Skriplets
Syntax
<% JAVA­CODE %>
<jsp:scriplet>JAVA­CODE</jsp:scriplet>
Erstes Beispiel
1
SOTE2­2016­05­06.notebook
May 06, 2016
JSP­Seiten werden zu Servlets konvertiert:
Der JSP­Code (vorherige Seite) wird wie folgt konvertiert:
zu finden in Z:\workspaceLuna\.metadata\.plugins\org.eclipse.wst.server.core
\tmp0\work\Catalina\localhost\SOTE2­2016­05­06\org\apache\jsp
Damit haben wir Zugriff auf die impliziten (vordefinierten) Objekte wie out, request, response usw.
... und so dargestellt
2
SOTE2­2016­05­06.notebook
May 06, 2016
2. Expression (entspricht in PHP "echo")
Syntax
<%= TXT %>
<jsp:expression>TXT</jsp:expression>
Das entspricht <% out.write(TXT); %>
3
SOTE2­2016­05­06.notebook
May 06, 2016
3. Declaration
Syntax
<%! int a = 2; %>
<jsp:declaration>int a = 2;</jsp:declaration>
Deklarationen nutzt man, um Klassen­/Instanzvariablen zu definieren, also Variablen, die Gültigkeit auf der gesamten Klasse d.h. außerhalb der doService­Methode haben. Damit könnten andere JSP­Dateien (im gleichen Package) darauf zugreifen.
de"
o
h
t
e
M
rvice­
e
S
"
alb
innerh
außerhalb
4
SOTE2­2016­05­06.notebook
May 06, 2016
4. Direktiven
Syntax
<%@ NAME_DIREKTIVE attrib1="wert1" attrib2="wert2".... %>
<jsp:directive attib1="wert1" attrib2="wert2">NAME_DIREKTIVE</
jsp:directive>
D
4.1 Page­Direktiven
z.B. Import von Klassen
<%@ page import="java.util.*" %>
z.B. Erben von Klassen
<%@ page extends="meinPackage.meineKlasse" %>
5
SOTE2­2016­05­06.notebook
May 06, 2016
4.2 Include­Direktive
<%@ include file="footer.txt" %>
Die include­Direktive sorgt dafür, dass der Text in "footer.txt" in das Servlet hinein­kompiliert wird. D.h. Änderungen von "footer.txt" werden zur Laufzeit ignoriert.
6
SOTE2­2016­05­06.notebook
May 06, 2016
5. Aktionen
5.1 Include
<jsp:include page="footer2.txt"/>
mit jsp:include wird der Inhalt der Datei (hier footer2.txt) zur Laufzeit (d.h. mitjedem Aufruf) eingelesen und der Inhalt in die Seite eingefügt.
Mit jsp:include lassen sich Webseiten modular entwickeln.
7
SOTE2­2016­05­06.notebook
May 06, 2016
5.2 JavaBeans
Syntax
<jsp:usebean id="beanname" class="package.KlasenName">
entspricht in Java: "Studentenbohne inst = new Studentenbohne();
entspricht in Java:
entspricht in Java:
inst.getVorname();
inst.setVorname("Stephen");
8
SOTE2­2016­05­06.notebook
May 06, 2016
JavaBeans sind "normale" Java­Klassen, deren Methoden einer Namenskonvention für die getter und setter verfügen und die einen public Default­Konstruktor haben.
JavaBeans helfen, das "Backend" (in Java implementiert) vom Frontend (HTML, CSS) zu entkoppeln, in dem das Backend keinen JavaCode enthält und das Frontend keinen/kaum Java­Code.
JavaBeans entsprechen im Sinne eines MVC­Patterns dem Model (enthalten die Daten), die JSP­Seiten den Views (Darstellung)
9
Herunterladen