Wednesday, February 20, 2019

JavaServer-Seiten - Wikipedia


JavaServer Pages ( JSP ) ist eine Technologie, die Softwareentwicklern dabei hilft, dynamisch generierte Webseiten auf Basis von HTML, XML oder anderen Dokumenttypen zu erstellen. Die 1999 von Sun Microsystems veröffentlichte JSP [1] ähnelt PHP und ASP, verwendet jedoch die Programmiersprache Java.

Zum Bereitstellen und Ausführen von JavaServer Pages ist ein kompatibler Webserver mit einem Servlet-Container wie Apache Tomcat oder Jetty erforderlich.




Überblick [ edit ]


Die Architektur von JSP-Modell 2.

Architektonisch kann JSP als eine Abstraktion von Java-Servlets auf hoher Ebene angesehen werden. JSPs werden zur Laufzeit in Servlets übersetzt, daher ist JSP ein Servlet. Jedes JSP-Servlet wird zwischengespeichert und wiederverwendet, bis die ursprüngliche JSP geändert wurde. [2]

JSP kann unabhängig voneinander oder als Ansichtskomponente eines serverseitigen Modell-Ansicht-Controller-Designs verwendet werden. normalerweise mit JavaBeans als Modell und Java-Servlets (oder einem Framework wie Apache Struts) als Controller. Dies ist eine Art von Architektur des Modells 2. [3]

JSP ermöglicht, dass Java-Code und bestimmte vordefinierte Aktionen mit statischen Web-Markup-Inhalten (z. B. HTML) verschachtelt werden, wobei die resultierende Seite kompiliert und ausgeführt wird auf dem Server, um ein Dokument zuzustellen. Die kompilierten Seiten sowie alle abhängigen Java-Bibliotheken enthalten Java-Bytecode anstelle von Maschinencode. Wie jedes andere Java-Programm müssen sie in einer Java Virtual Machine (JVM) ausgeführt werden, die mit dem Host-Betriebssystem des Servers zusammenarbeitet, um eine abstrakte, plattformneutrale Umgebung bereitzustellen.

JSPs werden normalerweise zum Liefern von HTML- und XML-Dokumenten verwendet, sie können jedoch durch die Verwendung von OutputStream auch andere Datentypen liefern. [4]

Der Web-Container erstellt implizite JSP-Objekte wie Anfrage, Antwort, Sitzung, Anwendung, Konfiguration, Seite, Seitenkontext, Ausgang und Ausnahme. JSP Engine erstellt diese Objekte während der Übersetzungsphase.



JSP-Seiten verwenden mehrere Trennzeichen für Skriptfunktionen. Das einfachste ist <% ... %>das ein JSP -Skriptlet enthält. Ein Scriptlet ist ein Fragment von Java-Code, das ausgeführt wird, wenn der Benutzer die Seite anfordert. Andere gebräuchliche Trennzeichen sind <%= ... %> für Ausdrücke, wobei Skriptlet und Trennzeichen durch das Ergebnis der Auswertung des Ausdrucks ersetzt werden, und -Richtlinien bezeichnet mit <%@ ... %>. . [5]

Java-Code muss nicht vollständig oder in einem einzigen Scriptlet-Block enthalten sein. Es kann Markup-Inhalt aufteilen, vorausgesetzt, die gesamte Seite ist syntaktisch korrekt. Beispielsweise müssen alle Java if / for / while -Blöcke, die in einem Scriptlet geöffnet wurden, in einem späteren Scriptlet ordnungsgemäß geschlossen werden, damit die Seite erfolgreich kompiliert werden kann.

Inhalte, die in einen Split-Block von Java-Code (über mehrere Scriptlets) fallen, unterliegen diesem Code. Inhalt innerhalb eines if -Blocks wird nur in der Ausgabe angezeigt, wenn die -Bedingung gilt, wenn die Bedingung wahr ist. Ebenso kann Inhalt in einem Schleifenkonstrukt mehrmals in der Ausgabe erscheinen, abhängig davon, wie oft der Schleifenkörper ausgeführt wird.

Folgendes wäre eine gültige for-Schleife in einer JSP-Seite:


Zählen bis drei:


<% für ( int i = 1 ; i i i ] 4 ; i ++) { %>

Diese Zahl ist <% = i % [19456501].


<% } %>

OK



Die im Webbrowser des Benutzers angezeigte Ausgabe wäre:


Bis drei zählen:

Diese Anzahl ist 1.

Diese Nummer ist 2.

Diese Nummer ist 3.

OK.


Expression Language [ edit ]


Version 2.0 der JSP-Spezifikation fügte Unterstützung für die Expression Language (EL) hinzu, die für den Zugriff auf Daten und Funktionen in Java-Objekten verwendet wird. In JSP 2.1 wurde es in die Unified Expression Language gefaltet, die auch in JavaServer Faces verwendet wird. [6]

Ein Beispiel für EL-Syntax:


 Der Wert von "variable" im Objekt "javabean" lautet $ {javabean.variable}.

Zusätzliche Tags [ edit ]


Die JSP-Syntax fügt zusätzliche Tags, so genannte JSP-Aktionen, hinzu, um integrierte Funktionen aufzurufen. [5] Darüber hinaus ermöglicht die Technologie die Erstellung von Angepasste JSP -Tagbibliotheken die als Erweiterungen der JSP-Standardsyntax fungieren. [7] Eine solche Bibliothek ist die JSTL, die allgemeine Aufgaben wie Iteration und Bedingungen (das Äquivalent von "for" und "if") unterstützt "Anweisungen in Java.) [8]


Compiler [ edit ]


Ein JavaServer Pages-Compiler ist ein Programm, das JSPs analysiert und in ausführbare Java-Servlets umwandelt. Ein Programm dieses Typs ist normalerweise in den Anwendungsserver eingebettet und wird beim ersten Zugriff auf eine JSP automatisch ausgeführt. Die Seiten können jedoch auch für eine bessere Leistung vorkompiliert werden oder als Teil des Build-Prozesses zum Testen auf Fehler kompiliert werden. [9]

Einige JSP-Container unterstützen die Konfiguration, wie oft der Container Zeitstempel von JSP-Dateien überprüft, um festzustellen, ob sich die Seite geändert hat. Normalerweise wird dieser Zeitstempel während der Softwareentwicklung auf ein kurzes Intervall (vielleicht Sekunden) und für eine bereitgestellte Webanwendung auf ein längeres Intervall (möglicherweise Minuten oder sogar nie) gesetzt. [10]


Criticism [ edit ]


Im Jahr 2000 beschrieb Jason Hunter, Autor von "Java Servlet Programming", eine Reihe von "Problemen" mit JSP. [11] Dennoch schrieb er, dass JSP zwar nicht die "beste Lösung für die Java-Plattform" sei "Es war die" Java-Lösung, die am ehesten mit der Nicht-Java-Lösung vergleichbar ist ", womit er die Active Server Pages von Microsoft meinte. Später fügte er seiner Website eine Notiz hinzu, dass JSP sich seit dem Jahr 2000 verbessert habe, zitierte jedoch auch seine Konkurrenten Apache Velocity und Tea (Vorlagensprache). [ Zitat benötigt


Siehe auch [ edit ]



Servlet-Container [ edit ]


Java-basierte Template-Alternativen. ]. 19659075] Literaturhinweise [ edit ]



Weiterführende Literatur [ edit


  • Bergsten, Hans (2003). JavaServer Pages (3. Aufl.). O'Reilly Media. ISBN 978-0-596-00563-4

  • Brown, Simon; Dalton, Sam; Jepp, Daniel; Johnson, Dave; Li, Sing; Raible, Matt. Pro JSP 2 . Apress ISBN 1-59059-513-0.

  • Hanna, Phil (2003). JSP 2.0 - Die vollständige Referenz . McGraw-Hill Osborne Media. ISBN 978-0-07-222437-5

  • Sierra, Kathy; Bates, Bert; Basham, Bryan Head First Servlets & JSP . O'Reilly Media. ISBN 978-0-596-00540-5.

Externe Links [ ]








No comments:

Post a Comment