Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Svenja Rathfon Geändert vor über 10 Jahren
1
1 Sg 3 – JSP - Java Server Pages Softwareengineering Praktikum Java Server Pages Nicole Brandstätter Josef Sturm Karl Streicher
2
2 Sg 3 – JSP - Java Server Pages Einführung Direkte Einbindung in Html-Code: Ausgabe über Direkte Ausgabe über: Mischen von Jsp und HTML: Ein Test … Jsp Deklarationen:
3
3 Sg 3 – JSP - Java Server Pages Einführung Import von packages/classes: Vererbung: Einbinden von Dateien: HTML oder Jsp Forwarding:
4
4 Sg 3 – JSP - Java Server Pages Sessions Starten/Weiterführen einer Session: Werte einfügen und holen: HttpSession session = request.getSession(true); session.putValue("WarenName", Ware w); Ware w = (Ware) session.getValue("WarenName"); session.removeValue("WarenName") String[] getValueNames() liefert ein Array mit den Namen aller Werte
5
5 Sg 3 – JSP - Java Server Pages JavaBeans Anforderung an eine Bean-Klasse: –Leerer Konstruktor (ohne Argumente) –Keine public-Variablen –Persistente Werte über: getXxx/setXxx bzw. isXxx/setXxx Methoden Anlegen bzw. benutzen eines Beans: <jsp:useBean id="einkaufswagen" class="EinkaufswagenBean" scope="page"/> Attributszugriff: Scopes: page, session, request, application
6
6 Sg 3 – JSP - Java Server Pages Beispiel Bean-Klasse public class EinkaufswagenBean { private Waren [] warenKorb; private int anzahlWaren; public EinkaufsWagenBean() {} public inWarenKorbLegen(Ware w) {...} public int getAnzahlWaren { return anzahlWaren; }
7
7 Sg 3 – JSP - Java Server Pages Individuelle Jsp-Tags ähnlich den Beans – nur mit mehr Eigenleben können Jsp-inhalt verändern mehr Aufwand zum Einrichten als Beans Bestehen aus: –Tag Handler Klasse –Tag Library Descriptor File –Jsp Datei Begriffe: [ body ]
8
8 Sg 3 – JSP - Java Server Pages Tag Handler Klasse: ExampleTag.java package taghandler; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; import java.io.*; public class ExampleTag extends TagSupport { protected testString = "Das ist ein Test"; public int doStartTag() { try { JspWriter out = pageContext.getOut(); out.print(testString); } catch(IOException ioe) { System.out.println("Error in ExampleTag: " + ioe); } return(SKIP_BODY); }
9
9 Sg 3 – JSP - Java Server Pages Tag Library Descriptor File <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> 1.0 1.1 test A tag library from Core Servlets example taghandler.ExampleTag inserts one line of output EMPTY
10
10 Sg 3 – JSP - Java Server Pages Verwendung im Jsp-File Liefert als Ergebnis: "Das ist ein Test!"
11
11 Sg 3 – JSP - Java Server Pages Attribute in individuellen Tags: ExtendedTag.java public class ExtendedTag extends ExampleTag { public void setText(String text) { testString = text; } Attribute mit dem Namen xxx, benötigen eine Methode mit dem Name setXxx, der Methodenparameter ist immer String
12
12 Sg 3 – JSP - Java Server Pages Tag Library Descriptor File example taghandler.ExampleTag inserts one line of output EMPTY text false
13
13 Sg 3 – JSP - Java Server Pages Verwendung im Jsp-File, Ausgabe: 1234, Hallo, Das ist ein Test
14
14 Sg 3 – JSP - Java Server Pages Verwenden des "body" public class HeadingTag extends TagSupport { private String bgColor="white"; public void setBgColor(String bgColor) { this.bgColor = bgColor; } public int doStartTag() { JspWriter out = pageContext.getOut(); out.print(" "); return(EVAL_BODY_INCLUDE); // body einfügen } public int doEndTag() { JspWriter out = pageContext.getOut(); out.print(" "); return(EVAL_PAGE); //mit seite fortfahren }
15
15 Sg 3 – JSP - Java Server Pages Tag Library Descriptor File example taghandler.ExampleTag JSP bgColor false Vorher: statt JSP "EMPTY"
16
16 Sg 3 – JSP - Java Server Pages Verwendung im Jsp-File Test1 Test2 Test3 Liefert 3 Tabellen mit Test1, Test2, Test3
17
17 Sg 3 – JSP - Java Server Pages Ändern des Body tags in individuellen Tags Methode: doAfterBody(); überschreiben Body b = getBodyContent(); liefert Body-Objekt b.getString(); body-Text als String Diesen kann man dann zB parsen und mit: JspWriter out = b.getEnclosingWriter(); out.print(parsedString);
18
18 Sg 3 – JSP - Java Server Pages Request Informationen Aufruf mit " request. " String getParameter(String name) liefert den Wert für die Variable "name" String[] getParameterValues() liefert ein Array aller Werte String getRequestUri() liefert den Url (nach host und port) Cookie[] getCookies() liefert ein Array aller Cookie-Objekte, Methoden: –getName/setName (String name) –getValue/setValue (String val) –getMaxAge/setMaxAge (int i) –response.addCookie(Cookie c)
19
19 Sg 3 – JSP - Java Server Pages Serialisierung default: true Beispiel: 0) { einkaufswagen.put(Ware w) lager.setLagerBestand(lagerBestand-1); } else out.println("Ausverkauft"); } %>
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.