Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

WWW Applikationen Vorlesung Anwendungssysteme. Lernziele: Wie funktioniert das WWW technisch? Welche Basis-Interaktionsmöglichkeiten bietet das WWW? Wie.

Ähnliche Präsentationen


Präsentation zum Thema: "WWW Applikationen Vorlesung Anwendungssysteme. Lernziele: Wie funktioniert das WWW technisch? Welche Basis-Interaktionsmöglichkeiten bietet das WWW? Wie."—  Präsentation transkript:

1 WWW Applikationen Vorlesung Anwendungssysteme

2 Lernziele: Wie funktioniert das WWW technisch? Welche Basis-Interaktionsmöglichkeiten bietet das WWW? Wie konstruiert man damit Web-basierte Informationssysteme, die auf Datenbanken zugreifen?

3 WWW 1990 Tim Berners-Lee, CERN: WWW basiert auf neuen Standards HTTP und HTML. Erster Browser: Nexus. 1993 Mosaic-Browser, Marc Andreessen gründet Netscape. 1995 Bill Gates stoppt Microsoft Network, Internet Explorer wird entwickelt.

4 HTTP Hypertext Transfer Protocol Zustandsloses Internet- Anwendungs-Protokoll, basiert auf TCP. Basis-Datenmodell: Verteilte Server mit eigenen Filesystemen. Request-Response Paradigma. Auf einen Request wird ein File geliefert. Nicht nur für HTML. Browser Server Request Response

5 TCP: bidirektionale Verbindung Ein Programm ist ständig bereit, eine Verbindung einzugehen: Der Serverprozess. Auf einem Rechner werden Serverprozesse durch ihren Port unterschieden. Der Client eröffnet die Verbindung aktiv. Während der Verbindung sind beide Prozesse bidirektional verbunden durch ASCII-Streams.

6 HTTP-Request Wird an Server gerichtet, üblicherweise Port 80. Request ist ein ASCII-Stream. Erste Zeile bei einfachen Requests –Befehl ( GET, POST, HEAD,... ) –Absoluter Filename. GET ag-db/index.html \n

7 HTTP-Response Besteht aus einem Statuswert und einer Datei. Statuswert: 200 = OK. 404 = not found. Sonderfall Redirection: Die Response ist eine neue URL, die automatisch geladen wird.

8 URL Uniform Ressource Locator Kompakte Darstellung eines Zugriffs mittels eines Netzwerkprotokolls: http://www.inf.fu-berlin.de:80/ag-db/index.html protocol://server.domain:port/path/file.extension

9 HTML HyperText Markup Language Blockstrukturierte Sprache für grafische Darstellung.Blöcke heißen Tags. Wichtiges Tag: Hyperlink. Enthält als Parameter eine URL. Benutzereingaben mittels Forms. Diese erzeugen aus den Benutzereingaben einen HTTP-Request. Demo Page Hello World This is HTML.

10 HTTP-Server Einfaches Programm, das auf einem Socket lauscht. Typischerweise Benutzer nobody. Pfade in den Anfragen werden vom Serverprogramm oft übersetzt. Pfade in den Anfragen sind daher nur virtuelle Pfade. Für viele Anwendungen: Rückgabe konstanter Files reicht nicht aus (z.B. Suchmaschinen).

11 Server-Skripting Auf der Serverseite werden anwendungsspezifische Programme ausgeführt. Diese liefern ein File. Ursprüngliche Methode: CGI –CGI: Common Gateway Interface. –Je Request wird ein Prozess gestartet. –Standardausgabe ist Serverantwort. Browser Request Response Server Anwendungs- Programm

12 Dreischicht-Architektur Informationssysteme greifen typischerweise auf Datenbanken zu. Zugriff auf Datenbank mit sprachspezifischer Datenbankschnittstelle C: ESQL Java: JDBC (SQLJ) Datenbank Middletier Clients

13 Benutzereingaben, Parameter. HTTP bietet Standardmechanismus für Parameterübergabe in der URL: http://www.beisp.de/cgi-bin/myscript/myoption?vl=aws&termin=1 myoption ist virtueller Pfad vl und termin sind Parameter mit Werten. HTTP erlaubt Fernaufrufe von Methoden, die Parameter nehmen und Texte liefern.

14 HTML-Forms Ein Form ist ein Bestandteil einer HTML- Seite (ein Tag), der verschiedene Eingabeelemente enthält. Ein Form konstruiert aus den Benutzereingaben eine parametrisierte (interaktive) URL. Darstellung Quellcode suche Wohnung ok suche <FORM action= http://...> suchbegriff Dies ist der HTML-Form.

15 Form-Elemente Textfelder einzeilig Textbereiche Radio Buttons Checkboxes Choice Lists Submit- und reset-Button

16 HTML-Interaktionsstil Ein Link startet interaktives Programm. Ergebnis enthält wieder Links auf interaktive Programme. BrowserServer Url Script1 Text Link Script2 Tabelle

17 Sitzungen im WWW HTTP ist zustandsloses Protokoll. Der HTTP-Server speichert keine Zustände. Sitzungen erfordern, daß der Server den Client mit früheren Anfragen identifizieren kann. Möglichkeiten: URL-rewriting, Cookies.

18 Design von Web Applikationen Entwurf auf Grundlage des WWW Interaktionsstils. Applikation besteht aus Methoden, die Parameter nehmen und Seiten zurückgeben. Die Rückgabeseiten enthalten Daten und Forms, die wiederum andere Methoden aufrufen.

19 Logischer Entwurf Angabe der Parameter einer Methode. Angabe der daraus konstruierten SQL- Anweisungen. Resultate erhalten Namen. Erzeugung der neuen Seite aus den Resultaten. Die neue Seite besteht aus Informationen, Links und Forms. sucheName(gesucht){ gefundene= ${SELECT * FROM adressen WHERE name=gesucht} while(gefundene.hasMore()){ print(gefundene.name); print(gefundene.anschrift); print(gefundene.email); link(loesche, gefundene.key) } } (Tabelle: adressen(key, name,anschrift, email)

20 Sitzungen im logischen Entwurf Methoden werden objektorientiert aufgefasst. In einer Sitzung wird immer dasselbe Sitzungsobjekt aufgerufen. Im Sitzungsobjekt können Daten abgespeichert werden. Beispieltabelle: mail(to, from, subject, msg)

21 loggedOn = false; setName(pretendedName){ this.name = pretendedName; this.loggedOn = true;} newMail(to, subject, msg){ if(! this.loggedOn) abort; ${INSERT INTO mail VALUES(this.name, to, subject, msg)} print(done);} getMails(){ if(! this.loggedOn) abort; allMails= ${SELECT from, subject, msg FROM mail WHERE to = this.name} while(allMails.hasMore()){ print(allMails.from);... form(newMail, allMails.from, allMails.subject, *)}}


Herunterladen ppt "WWW Applikationen Vorlesung Anwendungssysteme. Lernziele: Wie funktioniert das WWW technisch? Welche Basis-Interaktionsmöglichkeiten bietet das WWW? Wie."

Ähnliche Präsentationen


Google-Anzeigen