Datenbankzugriff über ISAPI-Webservererweiterungen

Slides:



Advertisements
Ähnliche Präsentationen
Java-Servlets Gliederung: Allgemeine Informationen zu Servlets
Advertisements

Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
2. DB-API: Programmierschnittstellen zu Datenbanken
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
MySQL.
Aufbau des Internets Überblick Prof. Dr. T. Hildebrandt
Basis-Architekturen für Web-Anwendungen
Kurze Einführung in ASP
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
© 2003 Guido Badertscher Spontane Vernetzung - UPnP 9. Jänner 2004 Spontane Vernetzung Guido Badertscher.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Intranet-Portal mit Microsoft SharePoint Portal Server
FH-Hof Einbindung von JavaScript Anweisungen
Java: Grundlagen der Sprache
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Spezielle Aspekte der Anbindung von Datenbanken im Web.
Java Server Pages Implementierung eines Web-Service-Clients Pea 13: Maik Opitz, Martin Melle, Philipp Hake.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
EXtensible Server Pages von Belrhiti El mostafa. Inhalt Was ist XSP ? Wichtige XSP Tags Erstellungsmöglichkeiten Die Basis der XSP.
Seminar Internet Technologien
Einführung in Visual C++
MSDN Webcast Visual Studio 2005 mit Visual FoxPro Jochen Kirstätter Mai 2005 –
Handling und Erstellung von: DLL, EXE, COM, DCOM
Erstellen von WebServices mit Visual FoxPro 9.0
Uwe Habermann WPF Avalon Formulare aus VFP verwenden Venelina Jordanova
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
PHP Pakete und Beispiele Webengineering Robert Lemke.
Internet-Datenbanken und ASP Eine Einführung von J.Sommer & A.Vortisch.
Client-Server Modell Advanced IT Basics Nicolas Frings.
Die .NET Common Language Runtime
Die .NET Common Language Runtime
SharePoint 2010 for Information Architects
UNIVERSITÄT ZU KÖLN HISTORISCH-KULTURWISSENSCHAFTLICHE INFORMATIONSVERARBEITUNG REUSABLE - CONTENT SS 2013 MARIA WAGNER ReST.
Client-Server Systeme
Grundlagen: Client-Server-Modell
Das Client/Server – Modell und die XAMPP-Distribution
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
Client Server Modell Universität zu Köln
IFB Speyer Daniel Jonietz dj 2 XAMPP - Was ist das? Paket mit: – X – Apache (Webserver) – MySQL oder SQLite (Datenbank) – Perl (Skriptsprache) –
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ADO.NET (1) Klassen für Zugriffe.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Beschreiben Sie eine Web Interaktion mittels Java Applets.
Zeit:Aktion: 08:30Begrüßung, Organisation 08:45Einführung - Was heißt OPC - OLE for Process Control --> Folie - OPC definiert eine offene Schnittstelle,
Oliver Spritzendorfer Thomas Fekete
Von Isabelle Spörl und Simon Schausberger
Herbers Excel-Server - der Workshop
Datenanbindung in Webapplikationen
Einführung in PHP.
MTS Microsoft Transaction Server Martin Basziszta
1 Delphi ( Komponenten I ) Basiert auf einer wahren Gegebenheit..
Client-Server-Modell
SharePoint 2013 Web Services
->Prinzip ->Systeme ->Peer – to – Peer
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
Funktionsweise von CMS
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Trigger-abhängige Client Interaktionen (bezüglich Oracle8i)
© 2003, Rudolf Jansen Einsatz der XML-Features der Oracle 9i DB zur Systemintegration Rudolf Jansen Freiberuflicher Entwickler und Autor
LINUX II Unit 7 LAMP Server. LAMP ● Linux – Apache - MySQL – PHP ● Leistungsfähiges und kostenloses System zur Genrierung von dynamischen Webseiten und.
ESP Tutorium Studienassistent: Ewald Moitzi Gruppe 1.
Web-Interface for Multi-FPGA Board Pamette
Systeme II 6. Die Anwendungsschicht
Datenbanken
 Präsentation transkript:

Datenbankzugriff über ISAPI-Webservererweiterungen Präsentation zur Belegarbeit für Vorlesung „Datenbanken II“ Andrei Scheibner (WF97w2)

ISAPI-Webservererweiterungen

Funktionen und Datenstrukturen GetExtensionVersion HttpExtensionProc Extension Control Block (ECB) Informationen über die Client-Anfrage und die Antwort des Servers Zeiger auf Callback-Funktionen GetServerVariable ReadClient WriteClient ServerSupportFunction

Extension Control Block cbSize: DWORD; // size of this struct. dwVersion: DWORD; // version info of this spec ConnID: HCONN; // Context number not to be modified! dwHttpStatusCode: DWORD; // HTTP Status code // null terminated log info specific to this Extension DLL lpszLogData: array [0..HSE_LOG_BUFFER_LEN-1] of Char; lpszMethod: PChar; // REQUEST_METHOD lpszQueryString: PChar; // QUERY_STRING lpszPathInfo: PChar; // PATH_INFO lpszPathTranslated: PChar; // PATH_TRANSLATED cbTotalBytes: DWORD; // Total bytes indicated from client cbAvailable: DWORD; // Available number of bytes lpbData: Pointer; // pointer to cbAvailable bytes lpszContentType: PChar; // Content type of client data

HttpExtensionProc (Beispiel) function HttpExtensionProc(var ECB: TEXTENSION_CONTROL_BLOCK): DWORD; stdcall; var ResStr: string; StrLen: DWORD; begin ECB.lpszLogData:='Delphi-DLL'; ResStr:='<HTML><HEAD><TITLE>ISAPI-Hallo</TITLE></HEAD>'+ '<BODY><H1>ISAPI-Hallo!!</H1>'+ FormatDateTime('d. mmmm yyyy, hh:nn:ss',Now())+ '</BODY></HTML>';

HttpExtensionProc (Beispiel) ResStr:=Format( 'HTTP/1.0 200 OK'#13#10'Content-Type: text/html'#13#10+ 'Content-Length: %d'#13#10'Content:'#13#10#13#10'%s', [Length(ResStr), ResStr]); StrLen:=Length(ResStr); ECB.dwHTTPStatusCode:=200; ECB.WriteClient(ECB.ConnID,Pointer(ResStr),StrLen,0); HttpExtensionProc:=HSE_STATUS_SUCCESS; end;

Vorteile Nachteile Liegen in kompilierter Form vor Abarbeitung verschiedener Anfragen in Threads innerhalb eines Prozesses Status bleibt zwischen Aufrufen erhalten (abhängig vom Webserver) Nachteile Nur in Windows-Umgebung ausführbar Schlecht änderbar Höherer Entwicklungsaufwand

OLE DB und ADO Object Linking and Embedding for Databases COM-basiert ermöglicht Zugriff auf beliebige Datenbanken über einen Provider ActiveX Data Objects Frontend für OLE DB Sammlung von Objekten für den Datenbankzugriff

Datenbankzugriff mittels ADO und OLE DB

ADO-Bibliothek (Version 2.0)

Datenbankstruktur

Funktionalität der Anwendung Anmeldung/Abmeldung Suchen nach Personen, Rassen, Planeten, Raumschiffen Änderung der Einträge von Personen, Rassen, Planeten, Raumschiffen Hinzufügen von neuen Einträgen für Personen, Rassen, Planeten, Raumschiffe

Entwicklungsumgebung Borland Delphi 4.0 Laufzeitumgebung Windows NT4.0 (2000) Oracle 8.1.5 (8.1.7) Webserver OmniHTTPd 2.0 (dito, Internet Information Server 5.0) ADO 2.0 Microsoft OLE DB Provider für Oracle (dito, Oracle Provider für OLE DB) javascriptfähiger Webbrowser