ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

36
ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI

Transcript of ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

Page 1: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

ASP und JSP im Vergleich

Jürgen Knecht

Fachhochschule Gießen-FriedbergFachbereich MNI

Page 2: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 2

Übersicht

Java Server Pages Active Server Pages Vergleich beider Techniken

Page 3: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 3

Java Server Pages Überblick Konzeption Direktiven Aktionselemente Skriptelemente

Scriptlets Ausdrücke Deklarationen

Page 4: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 4

JSP - Überblick Technologie für die Programmierung von

Webseiten mit dynamischen Inhalten Erweiterung der Java Servlet Technologie Entwickelt von Sun Microsystems seit Juni 99 Baut auf Java auf und nutzt dessen gesamten

Funktionsumfang

Page 5: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 5

JSP - Vorraussetzungen

package javax.servlet.* (J2EE) funktionierende Java-Umgebung JSP/Servlet-Engine z.B. Tomcat Engine als Webserver-Bestandteil oder

Standalone

Page 6: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 6

JSP - Konzeption JSP Elemente werden in statisches HTML

eingebettet Dateien haben die Endung *.jsp Servlet Container wandelt JSP-Seiten in Servlets

um Durch JSP Elemente erzeugter Inhalt wird mit

statischem HTML verbunden und an den Client gesendet

Page 7: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 7

JSP - Konzeption

Page 8: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 8

JSP - Direktiven

Allgemeine Syntax:

<%@ direktiveName attribut1=„wert1“ attribut2=„wert2“ %>

Dienen zur Informationsübergabe an die JSP-Engine

Beispiel: <%@ page contentType=„text/html“ language=„java“ %>

Page 9: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 9

JSP – page Direktive page-Direktive übermittelt seitenspezifische

Informationen Wichtige Attribute:

language – Angabe der Skriptsprache import – Java-Import-Deklaration extends – Java-Extends Anweisung contentType – MIME-Typ der generierten Seite errorPage – wird bei Exceptions aufgerufen buffer – legt Größe des Zwischenspeichers fest session – Session-Management an/aus

Page 10: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 10

JSP – include Direktive

Fügt eine statische Datei ein wird vor Erstellung der Implementierungs-

klasse der JSP Seite eingefügt Darf mehrfach in einer JSP-Seite verwendet

werden Beispiel:

<%@ include file=„header.html“ %>

Page 11: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 11

JSP – taglib Direktive Deklariert eine in der Seite verwendete Taglib-

Bibliothek Ermöglicht den Einsatz benutzerdefinierter

Tags Attribute

prefix – Präfix für alle Elemente in der Bibliothek uri – Pfad zur Bibliotheksdatei

Beispiel: <% taglib uri=„bsptaglib“ prefix=„bsp“ %>

Page 12: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 12

JSP - Aktionselemente Werden bei Anforderung der Seite ausgeführt Sind in Form von XML-Elementen in die Seite

eingebettet Standardaktionselemente benutzerdefinierte Aktionselemente Besteht aus Start-Tag, Inhalt und End-Tag Beispiel:

<jsp:forward page=„naechsteSeite.jsp“ %><jsp:param name=„einParameter“ value=„einWert“ />

</jsp: forward>

Page 13: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 13

JSP Standard-Aktionselemente <jsp:forward>

leitet auf andere Seite oder Servlet weiter Beispiel: <jsp:forward page=„list.jsp“ />

<jsp:include> fügt Antwort aus anderer JSP-Seite, Servlet oder

statischen Dateien ein wird zur Anfragezeit ausgewertet

<jsp:param> Verwendung innerhalb von „forward“ oder „include“ gibt zusätzliche Anfrageparameter für die Ziel-

ressource an

Page 14: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 14

JSP Standard-Aktionselemente <jsp:plugin>

dient zum Einbinden von Java-Applets oder benannten Bean-Komponenten

unterstützt zahlreiche Attribute zur Applet-Konfiguration

<jsp:useBean> Ermöglicht Benutzung von Java-Beans

<jsp:setProperty> Legt den Wert einer oder mehrerer Bean-

Eigenschaften fest

Page 15: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 15

JSP - Skriptelemente Scriptlets

(Java)-Code-Block, der zwischen dem Start- <% und dem Ende-Kennzeichen %> eingeschlossen ist

Beispiel:<%@ page language=„java“ contentType=„text/html“ %><html> <body bgcolor=„white“><jsp:useBean id=„clock“ class=„java.util.Date“ /><% if (clock.getHours() < 12 { %>

Guten Morgen!<% } else if (clock.getHours() < 17 { %> Guten Abend!<% } else { %> Guten Abend!<% } %></body> </html>

Page 16: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 16

JSP - Skriptelemente Ausdrücke

Beginnen mit <%= und enden mit %> Ergebnis des Ausdrucks wird in den Antwort-Body

geschrieben Beispiel:

<%= userInfo.getUserName() %> Können zur dynamischen Angabe von Attributen

verwendet werden:<jsp:useBean id=„logEntry“ class=„com.foo.LogEntryBean“ /><jsp:setProperty name=„logEntry“ property=„entryTime“ value=„<%= new java.util.Date() %>“ />...

Page 17: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 17

JSP - Skriptelemente Deklarationen

Beginnen mit <%! und enden mit %> Ermöglichen globale Deklarationen In Scriptlets deklarierte Variablen enthalten dagegen

jeweils einen eigenen Wert für jede Anfrage Beispiel:

<%! int globalCounter = 0; %>

Alle Anfragen verwenden die Variable gemeinsam Kann zur Deklaration von Methoden verwendet

werden

Page 18: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 18

Implizite JSP-Objekte Instanzen von Klassen, die durch die Servlet-

und JSP-Spezifikationen definiert sind Werden durch JSP-Container bereitgestellt Folgende Objekte sind in jeder JSP-Seite

verfügbar: application: dient zum Zugriff auf Informationen über

die Anwendungsumgebung. Bsp.: getServerInfo() config: ermöglicht Zugriff auf Initialisierungs-

parameter der Web-Anwendung und den Context exception: in Fehlerseiten zur Fehlerbehandlung

verfügbar

Page 19: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 19

Implizite JSP-Objekte out: bietet Zugriff auf den Ausgabekanal des Servlets request: stellt zahlreiche Methoden zum Zugriff auf

Anfrage-parameter zur Verfügung response: stellt zahlreiche Methoden zum Zugriff auf

das in Servlets vorhandene Response-Objekt zur Verfügung

session: Referenz auf ein HttpSession-Objekt, welches die Steuerung einer Session ermöglicht

Page 20: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

Active Server Pages

Eine kurze Einführung

Page 21: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 21

ASP - Überblick

Produkt der Firma Microsoft Zielsetzung Aufbau und Konzeption ähnlich JSP Läuft ausschließlich auf dem Microsoft Internet

Information Server Verwendet als Scriptsprache VBScript oder

Jscript. Andere Scriptsprachen sind möglich Dateierweiterung ist *.asp

Page 22: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 22

ASP - Vorraussetzungen Hardware:

Mindestens Pentium 100 Mindestens 32 MB Arbeitsspeicher Mindestens 100 MB Festplattenspeicher

Software Windows 95/98/ME/NT/2000/XP Personal Web Server oder IIS

Page 23: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 23

ASP - Grundlagen Spezifikation der verwendeten Scriptsprache:

<%@ language="javascript" %> Scriptelemente wie bei JSP begrenzt durch <%

und %> globale Variablen werden außerhalb einer

Prozedur deklariert und lokale innerhalb Speicherung von Session- und Application-

Variablen möglich Statische Includes in ASP gleichen SSI‘s:

<!--#include file(virtual)=„header.inc"-->

Page 24: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 24

ASP - Grundlagen Ausdrücke werden wie bei JSP von <%= und

%> begrenzt Verwendung von Ausdrücken als Attributwerte

ebenfalls möglich Optionale Datei „global.asa“

Ermöglicht Deklaration von Objekten und Variablen Application-Events

Application_OnStart Application_OnEnd

Session-Events Session_OnStart Session_OnEnd

Page 25: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 25

ASP Objekte Analog zu JSP gibt es die folgenden impliziten

Objekte mit ähnlicher Funktionsweise: Response, Request, Application, Session, Server,

Error Zusätzliche Objekte:

FileSystem – Zugriff auf das Dateisystem TextStream – Zugriff auf Textdateien Drive – Zugriff auf Informationen über Dateisysteme File – Zugriff auf Informationen über einzelne Dateien Folder – Informationen über einzelne Ordner Dictionary – Speichern von Attributname/Wert-Paaren

Page 26: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 26

ASP Components AdRotator

Erzeugt ein AdRotator Objekt, welches sich bei jedem Aufruf oder Refresh der Seite ändert

Browser Capabilities Erzeugt ein BrowserType Objekt, welches den Typ,

die Fähigkeiten und die Version des Client-Browsers ermittelt

Content Linking Erzeugung eines einfachen Navigationssystems

Content Rotator Content, welcher sich bei jedem Aufruf ändert

Page 27: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

Vergleich beider Techniken

Unterschiede der konkurrierenden Techniken im Überblick

Page 28: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 28

Gross- und Kleinschreibung ASP

Dim intCounter

'dies ist dieselbe Variableintcounter = 0 ‚

Schreibweise in ASP spielt keine Rolle

IF intCOUNTER = 0 then  Response.Write("erster")Else  Response.Write("weitere")EnD iF

JSP int intCounter;

//Gross- und Kleinschrift muss stimmen

intCounter = 0; //Schlüsselwörter sind in Java immer kleinif (intCounter == 0) {  out.println("erster");} else {  out.println("weitere");}

Page 29: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 29

Statement Abschluss ASP

‚einzeiliges Statement‘intcounter = 0

‚mehrzeiliges Statement‘Response.Write("<p>" & strvorname _  & "&nbsp;" & strname & "</p>" & vbCrLf)

JSP //einzeiliges Statement

intCounter = 0;

//mehrzeiliges Statementout.println("<p>" + strVorname   + "&nbsp;" + strName + "</p>");

Page 30: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 30

Operationszeichen

ASP = <> AND NOT

JSP == !“ && !

Page 31: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 31

Bedingungen

ASP If sngzufallszahl < 0.5

Then  Response.Write("kleiner")Else  Response.Write("grösser")End If

JSP if (sngZufallszahl < 0.5)

{  out.println("kleiner");} else {  out.println("grösser");}

Page 32: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 32

Mehrfachverzweigungen ASP

Select Case dattimeofday  Case 0    Response.Write("So früh?" & _      "<br />" & vbCrLf)  Case 1    Response.Write("Guten Morgen" & _        "<br />" & vbCrLf)  Case 2    Response.Write("Guten " & _      "Nachmittag<br />" & vbCrLf)  Case 3    Response.Write("Guten " & _      "Abend<br />" & vbCrLf)  Case Else     Response.Write("Sie leben " & _       zeitlos!<br />" & vbCrLf)End Select

JSP switch(datTimeofday) {

  case 0:    out.println("So früh?<br />");    break;  case 1:    out.println("Guten Morgen<br />");    break;  case 2:    out.println("Guten Nachmittag!<br />");    break;  case 3:    out.println("Guten Abend<br />");    break;  default:    out.println("Sie leben zeitlos!<br />");  break;}

Page 33: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 33

Vergleich mit Strings

ASP If strText = "Bild" Then

  ..End If

JSP If

(strText.equals("Bild") {  ..}

Page 34: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 34

Features im Vergleich

ASP JSP

Web ServerMicrosoft IIS oder PersonalWebServer

Apache, Netscape, IIS und andere

Plattformen Microsoft WindowsSolaris, Windows, Mac OS, Linux, etc.

Wiederverwendbare plattformübergrei-fende Komponenten

NeinJavaBeans, Enterprise JavaBeans, custom JSP tags

Scriptsprachen VBScript, JScript Java

Benutzerdefinierte Tags

Nein Ja

Page 35: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 35

Features im Vergleich

ASP JSP

Datenbank Anbindung

Ja (COM) Ja (JDBC API)

unterstützte Datenquellen

ODBC ODBC und JDBC

Komponenten COM KomponentenJavaBeans, Enterprise JavaBeans, custom JSP tags

Page 36: ASP und JSP im Vergleich Jürgen Knecht Fachhochschule Gießen-Friedberg Fachbereich MNI.

28.05.2002 ASP und JSP im Vergleich 36

ENDE