Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

JSTL - JSP Standard Tag Library ETIS SS04. JSTL 2 Gliederung Motivation Bestandteile core - Kernfunktionalität function - Funktionen fmt - Formatierung.

Ähnliche Präsentationen


Präsentation zum Thema: "JSTL - JSP Standard Tag Library ETIS SS04. JSTL 2 Gliederung Motivation Bestandteile core - Kernfunktionalität function - Funktionen fmt - Formatierung."—  Präsentation transkript:

1 JSTL - JSP Standard Tag Library ETIS SS04

2 JSTL 2 Gliederung Motivation Bestandteile core - Kernfunktionalität function - Funktionen fmt - Formatierung / Internationalisierung Zusammenfassung

3 ETIS SS04JSTL 3 Motivation (I) ZIEL JSP: Web-Designer Arbeit mit Servlets ermöglichen ABER: eingebetteter Java-Code ist problematisch DAHER: Custom Tag Libraries mit JSP 1.1 –Tag-Library-Descriptor: XML-Datei, beschreibt, welche Tags die Library bereitstellt für jedes Tag eine Tag-Handler-Klasse festgelegt –Tag-Handler, Java-Klassen, legen Aktionen bei Auftreten eines Tags fest Tag-Library = Tag-Library-Decriptor + Tag-Handler

4 ETIS SS04JSTL 4 Motivation (II) Standardisierte Tag Libraries fehlten lange JSTL (JSP Standard Tag Library) –kapselt Kernfunktionalität, die vielen Webanwendungen gemeinsam ist (Iterationen, Internationalisierung,...) –Spezifikation unter JSR-52 „A Standard Tag Library for JavaServer Pages“ in JCP erarbeitet Referenzimplementierung vom Jakarta Taglibs-Projekt –aktuell Version 1.1 – JSP 2.0 –mit JSTL Einführung der Expression Language (EL) –GUIs nicht durch JSTL abgedeckt  Entwicklung: JSF

5 ETIS SS04JSTL 5 Bestandteile Tag- Bibliothek Aufgabe coreGrundlegende Tags (für Schleifen, Bedingungen, Ausnahmebehandlung) fmtInternationalisierung, Datums- und Zahlenformatierung sqlTags zur Einbindung relationaler DBs xmlUmgang mit XML (Parsen, Transformieren von XML-Dokumenten) functionsFunktionen v.a. zur Verarbeitung von Zeichenketten

6 ETIS SS04JSTL 6 Core – Kernfunktionalität (I) Bedingte Ausführung –mit Scriptlets: Bestseller! –mit Tags: taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/core“ %> Bestseller!

7 ETIS SS04JSTL 7 Core – Kernfunktionalität (II) Bedingte Ausführung (entspricht if-then-else) taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/core“ %>

8 ETIS SS04JSTL 8 Core - Kernfunktionalität (II) Schleifen taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/core“ %> –items: als Scoped Variable gespeicherte Collection Scoped Variable: in einem Gültigkeitsbereich (page, request, session, application) einer Web-Anwendung gespeichertes Objekt –var: Name einer Scoped Variable (enthält aktuellen Wert der Iteration)

9 ETIS SS04JSTL 9 Core - Kernfunktionalität (III) Weitere Funktionalitäten: –Ausnahmebehandlung –Links + Redirects –Einbinden externer Ressourcen

10 ETIS SS04JSTL 10 function - Funktionen Funktionen v.a. zur Verarbeitung von Zeichenketten Beispiele: –contains(string, substring) –join (collection, separator) –toLowerCase(string) –trim(string) konkretes Beispiel: taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/core“ %> Autoren: ${fn:join(buch.autoren, “, “)}

11 ETIS SS04JSTL 11 fmt – Internationalisierung/Formatierung (I) Internationalisierung (kurz: I18N) –Anwendung für Benutzer verschiedener Sprachen zugänglich machen Text in Sprache des Anwenders Datumsangaben + Zahlen landesabhängig –anstelle fest angegebener Zeichenketten treten Schlüssel in einer Art Zeichenkettentabelle (Resource Bundle) –Ressource Bundle i.d.R. als Properties Datei gespeichert #Message_en.properties welcomePage.title = Welcome! welcomePage.button.submit = Submit Sprache im Datei- namen kodiert

12 ETIS SS04JSTL 12 fmt – Internationalisierung/Formatierung (II) JSP-Seite: taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/fmt“ %> –hierbei: implizite Auswahl der Sprache/Land auf Grundlage des Accept-Language-Headers –explizites Setzen möglich

13 ETIS SS04JSTL 13 fmt – Internationalisierung/Formatierung (III) Zahlen- und Datumsformatierung –länderabhängige Darstellung Beispiel: ,00 (DE) / 10, (USA) / ,00 (FR) Dienstag, 15.Juni 2004 (DE) / Tuesday, June 15, 2004 (USA) –Lösung: taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/fmt“ %> Ausgabetype (Zahl, Prozent- wert, Währung) Währungssymbol

14 ETIS SS04JSTL 14 fmt – Internationalisierung/Formatierung (IV) taglib prefix=“c“ uri=“http://java.sun.com/jsp/jstl/fmt“ %> detaillierte Darstellungsformatierung mit dateStyle bzw. timeStyle –z.B. dateStyle=“full“: Dienstag, 15.Juni 2004 –z.B. timeStyle=“full“: 9.30 Uhr CEST

15 ETIS SS04JSTL 15 fmt – Internationalisierung/Formatierung (V) TagsAufgabe setBundleSetzt Ressourcenbündel für den Rest der Seite (Zeichenketten-Dateien) bundleSetzt im Rumpf des Tags zu verwendende Ressourcenbündel setLocaleSetzt zu verwendende Locale (Kombination Land Sprache de-DE de-AT) messageGibt lokalisierte Zeichenkette aus formatDateFormatiert Datums- und Uhrzeitangaben (abhängig von Locale) formatNumberFormatiert Zahlen (abhängig von Locale)

16 ETIS SS04JSTL 16 Zusammenfassung Grundlegende Anforderungen vieler Webanwendungen mit JSTL erfüllt Internationalisierung, Iteration, XML, DB,... GUI-Entwicklung nicht abgedeckt wenige, flexibel verwendbare Tags anstelle vieler ähnlicher Tags

17 ETIS SS04JSTL 17 Literatur Turau, V., Saleck, K., Lenz, C., Web-basierte Anwendungen entwickeln mit JSP2, dpunkt.verlag, Heidelberg, 2004 Wille, S., Go To Java Server Pages, Addison-Wesley, München, doc/intro.html


Herunterladen ppt "JSTL - JSP Standard Tag Library ETIS SS04. JSTL 2 Gliederung Motivation Bestandteile core - Kernfunktionalität function - Funktionen fmt - Formatierung."

Ähnliche Präsentationen


Google-Anzeigen