Standardvariable stehen innerhalb der gesammten JSP Seite z.B. in Scriptlets zur Verfügung. Diese Variablen werden beim Start der Seite automatisch angelegt. Standardvariablen werden auch als implizite Objekte (implicit objects) bezeichnet.
Folgende Standardvariablen sind für JSP-Seiten definiert:
application | javax.servlet.ServletContext |
config | javax.servlet.ServletConfig |
exception | java.lang.Throwable |
out | javax.servlet.jsp.JspWriter |
page | java.lang.Object |
pageContext | javax.servlet.jsp.PageContext |
request | javax.servlet.ServletRequest |
response | javax.servlet.ServletResponse |
session | javax.servlet.http.HttpSession |
Mithilfe eines JSP-Ausdrucks kann das Ergebnis einer Java-Anweisung in die Ergebnisseite eingefügt werden. Die allgemeine Form eines Java-Ausdrucks ist:
<%= Java-Asudruck %>
Im Listing JSP1.jsp fügt die Zeile:
<%= new java.util.Date() %>
das aktuelle Datum in das HTML Dokument ein.
Listing: JSP1.jsp
<html> <body> <h1>My first JSP</h1> Today is: <%= new java.util.Date() %> </body> </html>
JSP-Ausdrücke werden nicht mit einem Semikolon abgeschlossen. Das Ergebnis eines JSP-Ausdruckes muss ein String bzw. Objekt sein, dessen toString()-Methode aufgerufen wird.
Mithilfe von Scriptlets lässt sich beliebiger Java-Code in eine JSP Seite einbinden. Es können z.B Schleifen oder Verzweigungen definiert werden. Es lässt sich die komplette Java-Bibliothek inklusive eigener Klassen verwenden.
Die allgemeine Form eines Scriptlets ist:
... <% ... ... %>
Innerhalb eines Scriptlets werden die einzelnen Java Anweisungen wie gewohnt durch ein Semikolon abgeschlossen. Um auf den Ausgabestrom zugreifen zu können steht die Standardvariable out zur Verfügung.
Mit Hilfe von JSP-Deklarationen werden Variablen und Methoden, die von der gesamte JSP-Seite aus aufgerufen werden können, definiert. Die allgeine Form einer Deklaration ist:
... <%! ... ... %>
Innerhalb eines Deklarationsblockes können mehrere Deklarationen vorgenommen werden.