Java Server Pages - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

Java Server Pages

Description:

Java Server Pages Hassan Bidani Jallal Alami Rahmouni FH Wiesbaden – PowerPoint PPT presentation

Number of Views:256
Avg rating:3.0/5.0
Slides: 29
Provided by: Hass99
Category:

less

Transcript and Presenter's Notes

Title: Java Server Pages


1
Java Server Pages
  • Hassan Bidani
  • Jallal Alami Rahmouni
  • FH Wiesbaden

2
Java Server Pages
  • Was sind JavaServer Pages?
  • Wofür benutzt man JavaServer Pages?
  • Unterschied zwischen Servlets und Java Server
    Pages
  • Die Anatomie einer JSP-Seite
  • Lebenszyklus von JSP-Seiten
  • JSPs Sprachelemente

3
Was sind Java Server Pages?
  • Java Server Pages (JSP) sind Bestandteil der
    J2EE, der Java 2 Enterprise Edition von Sun
    Microsystems J2EE.
  • Die JSP-API in der Version 1.0 erschien im Mai
    1999.
  • JSPs enthalten HTML, JavaScript Java Code für
    die Visualisierung von dynamischen Web-Inhalten.
  • JSPs werden serverseitig ausgeführt.
  • JSPs werden beim ersten Aufruf in ein Servlet
    umgewandelt und kompiliert. Das Servlet wird von
    der Servlet Engine ausgeführt.
  • JSPs sind plattformunabhängig und im Rahmen der
    Java APIs erweiterbar.
  • JSPs erlauben die einfache Nutzung von
  • Datenbanken
  • Sessions
  • Cookies
  • XML

4
Wofür benutzt man JavaServer Pages?
  • schneller und effizienter Webapplikationen und
    dynamische Webinhalte entwickeln.
  • Mit Hilfe von JavaServer Pages können komplexe
    Webapplikationen entwickelt werden.
  • innerhalb von JPS-Seiten auf Datenbanken
    zugreifen.

5
Unterschied zwischen Servlets und Java Server
Pages
  • Trennung zwischen Informationen und
    Visualisierung fällt bei Servlet.
  • Wo ein Servlet eine Java-Klasse ist, die sich um
    die Ausgabe des HTML-Codes kümmert, ist eine JSP
    eine HTML-Seite mit Java-Code.
  • bedeutet dass JSPs sind leichter zu ändern als
    Java Servlet
  • JSPs Code sind Wiederverwendbar durch
    Kapselung von Anwendungslogik.

6
Die Anatomie einer JSP-Seite
  • Eine JSP-Seite besteht aus template text und
    JSP-Elementen.
  • in der JSP-Seite zu den statischen
    HTML-Elementen zusätzlich JSP-Elemente
    hinzugefügt.
  • JSP-Seite ist also im Grunde eine normale
    Webseite mit
  • zusätzlichen JSP-Elementen.
  • JSP-Elemente sind Skripte, Direktiven, und
    Aktionen.

7
Die Anatomie einer JSP-Seite
8
Ein einführendes Beispiel
  • helloWorld.jsp
  • lthtmlgt
  • ltheadgt
  • lttitlegtJSP HelloWorldlt/titlegt
  • lt/headgt
  • ltbodygt
  • lth1gtHelloWorldlt/h1gt
  • lt String name request.getParameter("parameter")
  • if (name null) name "world" gt
  • lth2gtHello lt name.toString() gt!lt/h2gt
  • lt/bodygt
  • lt/htmlgt

9
Lebenszyklus von JSP-Seiten (1)?
  • Eine JSP-Seite kann nicht als solche zum Browser
    geschickt werden.
  • Alle JSP-Elemente müssen vorher durch den Server
    verarbeitet werden.
  • Wenn man die JSP-Technologie einsetzen möchte,
    benötigt man einen
  • JSP-fähigen Webserver.
  • Das bedeutet, dass der Webserver einen
    JSP-Container zur Verfügung stellt,
  • der die Verarbeitung der JSP-Seiten vornimmt,
    also die Übersetzungs-
  • und Anfragephase erledigt.
  • Dieses wird dadurch erreicht, dass die
    JSP-Seite in ein Servlet umgewandelt wird.

10
Lebenszyklus von JSP-Seite (2)?
Generierung
Quellcode des Servlet
JSP- Seite
bei jeder Änderung der JSP-Seite
Übersetzung
bei jeder Änderung der JSP-Seite
Ausführung
Servlets
HTML
bei jeder Anfrage
11
Lebenszyklus von JSP-Seiten (3)?
  • Übersetzungphase
  • JSP-Datei, falls vorhanden,in ein Servlet
    konvertiert.
  • Es entsteht eine Datei mit dem Quelltext des
    Servlets ZB index.jsp -gt
    indexjsp.java
  • Diese Datei wird nun in ein Servlet kompiliert.
    Es entsteht also eine .class-Datei.
  • Diese beiden Schritte bezeichnet man als
    Übersetzungsphase (translation phase).
  • Diese Phase wird nur ausgeführt, wenn die Seite
    zum ersten Mal angefragt wird Laden und
    Instantiieren des Servlet.
  • Ausführen der Methode jspInit()?
  • Geeignet für alle einmaligen Aufgaben.
  • Kann durch eine Deklaration auf der JSP-Seite
    überschrieben werden.

12
Lebenszyklus von JSP-Seiten (4)?
  • Anfragephase
  • Des weiteren muss der Server auf jede Anfrage
    (request) eine Antwort (response)
    generieren durch die Methode
  • _jspService (HttpServletRequest req ,
    HttpServletResponse resp )?
  • Beendigung durch Ausführen der Methode
    jspDestroy()
  • Diese Methode bildet das logische Gegenstück zur
    Methode jspInit()
  • Freigabe von Ressourcen

13
JSPs Sprachelemente
  • JSP stellt verschiedenen Elemente zur Verfügung,
    um Webseiten mit dynamischen Inhalt zu
    generieren.
  • Alle Elemente werden in die JSP-Seite
    eingebettet.

14
JSPs Sprachelemente - Arten
  • Skripte (Scriptlets).
  • Direktiven .
  • Aktionen.

15
JSPs Sprachelemente - Skripte(1)?
  • Ausdrücke (expressions)?
  • Wert eines Java-Ausdrücke wird in das
    Ausgabedokument geschrieben.
  • Zugriff auf bekannte Objekte und deren Methoden.
  • String Behandlung.
  • Die Syntax lautet lt Ausdruck gt
  • Wichtig Kein Semikolon.
  • ist äquivalent zu lt out.print(ausdruck)
    gt
  • Siehe Beispiel

16
JSPs Sprachelemente - Skripte(2)?
  • Vereinbarungen (declarations)?
  • Variablen , Methoden Vereinbarungen.
  • Mehrere Vereinbarungen, Variablen
    Initialisierung.
  • Gültifkeitsbereich ganze JSP-Seite.
  • Die Syntax lautet lt! Vereinbarung(en) gt
  • Siehe Beispiel.

17
JSPs Sprachelemente - Skripte(3)?
  • Anweisungsfragmente (scriplets / code fragments)
  • Einbettung Java Anweisungen in JSP-Seiten.
  • Mehrere Ausdrücke.
  • Keine vollständigen Anweisugen nötig.
  • Die Syntax lautet lt Anweisungsfragment (e) gt
  • Siehe Beispiel

18
JSPs Sprachelemente -Direktiven(1)?
  • Informationen über JSP-Seite Spezifizieren.
  • Direktiven besitzen Attribute, die gesetzt
    werden können.
  • JSP kennt verschiedene Direktiven
  • Include.
  • Page.
  • Taglib.
  • Die Syntax lautet lt_at_ Direktivenname
    attributnamewert gt

19
JSPs Sprachelemente -Direktiven(2)?
  • Die Direktive include
  • Mit dieser Direktive wird eine Datei während
    der Übersetzungsphase in die JSP-Datei mit
    der include-Direktive eingefügt.
  • Die einzufügende Datei kann sowohl eine HTML- als
    auch eine JSP-Datei sein.
  • Die Syntax lautet lt_at_ include fileRelative
    URL gt

20
JSPs Sprachelemente -Direktiven(3)?
  • Die Direktive page
  • Die Importkontrolle der einzelnen Klassen.
  • Einfluss auf den Übersetzungsvorgang.
  • Können eine oder Mehrere Attribute verwendet
    werden.
  • 10 Attribute.
  • Die Syntax lautet lt_at_ page ... gt
  • Beispiel für die Verwendung von Import
  • lt_at_ page import java.utils. ,
    mypackage.class gt

21
JSPs Sprachelemente -Direktiven(4)?
  • Die Direktive taglib
  • JSP file welches die taglibrary nutzt.
  • Die Direktive taglib deklariert eine
    tag-Bibliothek, die benutzerdefinierte Aktionen
    enthält und somit in der JSP-Seite nutzbar macht.
  • Die Syntax lautet
  • lt_at_ taglib uriURIderTagbibliothek
    prefixtagPrefixgt

22
JSPs Sprachelemente -Aktionen(1)?
  • Aktionen können Objekte erzeugen der existierende
    Objekte modifizieren.
  • Beeinflussen der Aktuellen JSP- Seite.
  • Die allgemeine Syntax lautet
  • ltaktion_Name attribut1wert1 attribut2wert2
    gt
  • aktion_Rumpf
  • lt/aktion_Namegt
  • Wenn es keinen Rumpf gibt, kann man eine Kurzform
    benutzen
  • ltaktion_Name attribut1wert1 attribut2wert2
    /gt

23
JSPs Sprachelemente -Aktionen(2)?
  • Standardaktionen
  • Standardaktionen müssen von jedem Server
    implementiert werden.
  • Include.
  • Forward.
  • Plugin.

24
JSPs Sprachelemente -Aktionen(include)?
  • Die Aktion include
  • Mit der Aktion include wird die Ausgabe einer
    JSP-Seite zur Laufzeit in eine andere JSP-Seite
    eingebettet.
  • So sind Änderungen an der durch die
    include-Aktion einzufügende Seite sofort
    sichtbar.
  • Bei der Direktive include geschieht dies zur
    Übersetzungszeit.
  • Die Syntax lautet
  • ltjspinclude page DateiURL flushtrue /gt

25
JSPs Sprachelemente -Aktionen(forward)?
  • Die Aktion forward
  • Die Aktion forward ermöglicht die Weiterleitung
    einer Anfrage an eine andere JSP-Seite oder auch
    an ein Servlet.
  • Diese Aktion beendet die Ausführung der aktuellen
    Seite, sie wird auch nicht wieder aufgenommen.
  • Die Syntax lautet
  • ltjspforward pagezielseite /gt

26
JSP Sprachelemente -Aktionen(Plugin
Benutzerdefinierte)?
  • Die Aktion plugin
  • Das Java Plugin ist eine Java Runtimeumgebung der
    Firma Sun, die im Browser eingebunden werden
    kann.
  • Es ermöglicht also die Nutzung von Java Applets.
  • Benutzerdefinierte Aktionen
  • Benutzerdefinierte Aktionen sind eine mächtige
    Möglichkeit dem Autor von JSP-Seiten weitere
    Logik zur Verfügung zu stellen.

27
Vorteile von JSP
  • gegenüber reinen Servlets
  • normales HTML ist bequemer zu schreiben.
  • Bessere Trennung von Präsentation und Inhalt.
  • gegenüber ActiveServer Pages(ASP) von Microsoft
  • Java ist mächtiger für komplexe Anwendungen als
    VBScript
  • oder andere ASP-spezifischeSprachen.
  • JSP lässt sich auf andere Betriebssysteme und
    Webserver portieren,
  • (plattformunabhängig )
  • gegenüber PHP(Hypertext Pre-Prozessor)?
  • Vorteil liegt im Bereich der bereits vielfältig
    vorhandenen APIsfür das Netzwerk, für
    Datenbankzugriffe usw.
  • Wenn man Java kann, muss man keine neue Sprache
    lernen.
  • gegenüber JavaScript

28
  • Danke für Die Aufmerksamkeit
Write a Comment
User Comments (0)
About PowerShow.com