datenanbindung in webapplikationen. 2 Überblick in diesem kapitel: datenpersistenz allgemeine...
TRANSCRIPT
![Page 1: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/1.jpg)
Datenanbindung in Webapplikationen
![Page 2: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/2.jpg)
2
Überblick
In diesem Kapitel:
Datenpersistenz allgemeine Aspekte der Datenpersistenz in
Webapplikationen Datenanbindung in serverseitigen Applikationen
Webapplikationstechnologien: PHP, ASP, ASP.NET, JSP
![Page 3: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/3.jpg)
3
Datenpersistenz
Möglichkeiten der Datenpersistenz– Statische Inhalte
z.B. in HTML, XML Dateien fixe Daten ohne (Vor-)verarbeitung
– Dynamische Inhalte Aufbereitung in serverseitigen Programmen (z.B. PHP,
ASP, CGI etc.)– Filesystem: low-level direct I/O– Datenbankmanagementsbstem (DBMS): high-level
managed I/O
![Page 4: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/4.jpg)
4
Datenpersistenz
Abstraktionsebenen bei Datenzugriff– DBMS als einzige Schicht
– Business Objects Layer Schicht zwischen Applikation und DBMS Ziel: Kapseln der Anwendungslogik in Business Objects Realisierung meist über Klassen-/Objektbibliotheken oder
Services (z.B. Java Beans, COM-Objekte, ...)
– Transaction Processing Monitors (TPM) Verwaltung einkommender Client-Anfragen Bündelung gleichartiger Anfragen bei gleichzeitiger
Sicherstellung der Datenintegrität wichtig für verteilte, stark vernetzte Architekturen
![Page 5: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/5.jpg)
5
Webapplikation mit Datenanbindung
Ablauf einer Webseitenabfrage mit Datenbankzugriff
3. Aufruf von DB-Funktionen über DB-API
ServerseitigeProgramme DBMS
Daten-bank
4. Ausführen der
Funktionen auf der DB
5. Ergebnis liefern
2. Request verarbeiten
Webserver
6. Response vorbereiten
Serverseite
1. HTTP-Request schicken
Webclient(z.B. Browser)
7. HTTP-Response schicken
8. Response anzeigen
![Page 6: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/6.jpg)
6
Webapplikation mit Datenanbindung
Ablauf einer Webseitenabfrage mit XML-Datenverarbeitung
3. Aufruf von XML APIs
ServerseitigeProgramme XML Library
File-System
4. Ausführen der
Funktionen im Filesystem
5. Ergebnis liefern
2. Request verarbeiten
Webserver
6. Response vorbereiten
Serverseite
1. HTTP-Request schicken
Webclient(z.B. Browser)
7. HTTP-Response schicken
8. Response anzeigen
![Page 7: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/7.jpg)
7
Webapplikation mit Datenanbindung
Beispielablauf einer Webseitenabfrage mit Web Service Invocations
ServerseitigeProgramme
5. Web Service
Response
2. Request verarbeiten
WebserverA
6. Response vorbereiten
Serverseite
1. HTTP-Request schicken
Webclient(z.B. Browser)
7. HTTP-Response schicken
8. Response anzeigen
Web Service
X
3. Web Service Request
WebserverB
4. Request verarbeiten
Web Service
Y
![Page 8: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/8.jpg)
8
Technologien für Webapplikationen
Überblick– Datenbankschnittstellen
ODBC/JDBC Native
– einige serverseitige Scriptumgebungen: PHP ASP, ASP.NET JSP ColdFusion
– Vergleich
![Page 9: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/9.jpg)
9
DB-Schnittstellen
Open Database Connectivity (ODBC)– Standardisiertes API für Datenbankzugriff– DB-spezifische Implementierungen durch ODBC-Treiber– SQL als Datenbankzugriffssprache
Java Database Connectivity (JDBC)– Java Klassenbibliothek von Sun Microsystems
Native APIs– Spezielle Application Programming Interfaces (API) für
bestimmte Datenbanksysteme und/oder SprachenzB. für OCI-Funktionen in PHP für Oracle8
![Page 10: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/10.jpg)
10
PHP
PHP: Hypertext Preprocessor– Scriptsprache– Open Source– Serverseitige Verarbeitung– Eingebettet in HTML
Datenanbindung– Mit allen gängigen Datenbank-/Betriebssystem–/
Server-Konfigurationen möglich– PHP/MySQL beliebteste Kombination
Schnell, billig, unkompliziert
![Page 11: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/11.jpg)
11
PHP
Eingebettet in HTML– Spezielle Tags zur Markierung von PHP-
Abschnitten, u.a. <?php ... ?>– ...jump in and out of "PHP mode"– Bsp.:
– am Client:
<html> <head><title>PHP Beispiel</title></head> <body> <?php echo "Guten Tag!"; ?> </body></html>
<html> <head><title>PHP Beispiel</title></head> <body> Guten Tag! </body></html>
![Page 12: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/12.jpg)
12
ASP, ASP.NET
Active Server Pages– Serverseitige Technologie von Microsoft– Konzept ähnlich PHP
Eingebettet in HTML– Unterstützt verschiedene Scriptsprachen– Plattform: WinNT, IIS– Datenanbindung: funktioniert mit ODBC-fähigen DBs
ASP.NET– Trennung HTML und OO-Programmcode [möglich]– Ereignisorientiert, Objektorientiert, verwendet .NET
Klassenbibliothek– Definiert HTML-Elemente als Objekte– vorherrschende Sprachen: VB.NET, C# (früher: VBScript, JScript)– Datenanbindung: Funktioniert derzeit mit SQL-Server und OLEDB
![Page 13: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/13.jpg)
13
ASP, ASP.NET
ASP: eingebettet in HTML, ablauforientiert
<html> <head><title>ASP Beispiel</title></head> <body> <% Response.Write("Hi, I'm an ASP script!") %> </body></html>
![Page 14: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/14.jpg)
14
ASP, ASP.NET
ASP.NET: "hinter" HTML, ereignisorientierte Web Forms
<%@ Page Language="vb" Codebehind="test.aspx.vb" Inherits="TestPage" %><html> <body> <asp:Table id="Tbl" runat="server"></asp:Table> <% WriteCurrentDate() %> </body></html>
Public Class TestPage Inherits System.Web.UI.Page Private Sub Page_Load(…) Handles MyBase.Load Tbl.BorderColor = Color.Blue Tbl.Rows(1).Cells(3).Text = "Hello!" ... End Sub
Protected Sub WriteCurrentDate() Response.Write( DateTime.Now.ToString() ) End SubEnd Class
test.aspx
test.aspx.vb
![Page 15: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/15.jpg)
15
JSP
JavaServer Pages– Ähnliches Konzept wie PHP/ASP– Java-Code eingebettet in HTML– Server erzeugt bei erstem Zugriff ausführbares Servlet:
"Reiner" Java-Bytecode HTML-Ausgabe über Response-Objekt
Datenanbindung– Zugriff auf Datenbank über JDBC-Klassen– Benötigt JDBC-Treiber für Datenbank
<body> <% for (int i=0; i<11; i++) { %> <br> <%= i %> <% } %></body>
![Page 16: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/16.jpg)
16
Weitere...
Common Gateway Interface (CGI)– Weit verbreiteter serverseitiger Mechanismus
Parameterübergabe an Programme (z.B. Formulareingaben)
Dynamische Erzeugung von HTML-Seiten, ...
– Sprachen: PERL, C/C++, ...– Datenbankanbindung möglich
ColdFusion– Kommerzielle Technologie (teuer)– In HTML eingebettete Tags– Datenbankanbindung möglich
![Page 17: Datenanbindung in Webapplikationen. 2 Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung](https://reader035.vdocuments.net/reader035/viewer/2022062512/55204d7f49795902118d1571/html5/thumbnails/17.jpg)
17
Vergleich
PHP ASP.NET JSP CGI
Sprachen PHP VB.NET,
C#
Java PERL, C/C++, ...
DBS Alle native OLEDB, SQL-Server
JDBC Alle
Plattform Alle WinNT, IIS Windows,
Unix/Linux
Alle
Kosten Freeware,
Open Source
Freeware Freeware X