Datenanbindung in Webapplikationen

Slides:



Advertisements
Ähnliche Präsentationen
Allgemeines Name: Ursprünglich: „Personal Home Page Tools“
Advertisements

Semesterarbeit von Dieter Lorenz, Sebastian Galenski, Stephan Bury
Java-Servlets Gliederung: Allgemeine Informationen zu Servlets
Webinterface für eingebettete Systeme in Dual-Server-Architektur
Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
2. DB-API: Programmierschnittstellen zu Datenbanken
Aufbau des Internets Überblick Prof. Dr. T. Hildebrandt
Basis-Architekturen für Web-Anwendungen
Kurze Einführung in ASP
Datenbankzugriff im WWW (Kommerzielle Systeme)
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Java: Grundlagen der Sprache
Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.
Seminar Sommersemester 2002 ASP.NET Andre Margousian.
Dynamische Webseiten mit PHP Oder: LAMP - The open way.
Architektur von Web- Informationssystemen. © Prof. T. Kudraß, HTWK Leipzig Techniken zur DB-Server- Anbindung Client-Seite Java Applet ActiveXPlugInCGISSIServer.
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Hassan Bidani Jallal Alami Rahmouni FH Wiesbaden
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Introducing the .NET Framework
Uwe Habermann WPF Avalon Formulare aus VFP verwenden Venelina Jordanova
Einführung und Überblick
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Interaktion mit Externen Diensten Carsten Schmidt/Andreas Schlesinger.
JDBC: JAVA Database Connectivity
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
... und alles was dazugehört
ODBC (Open Database Connectivity)
Einführung Servlets/JSPs
Learning By Doing Thema 1: Dynamische Webseiten und Online Datenbanken (Jarka Arnold) Thema 2: Simulationen, Sound, Schnittstellen (Aegidius Plüss) Thema.
Seminar Internet - Technologie
ArcGIS als WPS Server Aktueller Stand der Umsetzung
EJB-Applikationsserver
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Basiswissen für Partner und interessierte Kunden Technologie.
Bedeutung von Internet-Technologien
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Dynamische Webseiten mit PHP [und Python]
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
CGI (Common Gateway Interface)
Java Server Pages Sergej Keterling
Oliver Spritzendorfer Thomas Fekete
Datenanbindung in Web-Applikationen
Webseiten mit PHP, SQL, XML und Webservices Anhand praktischer Beispiele.
Datenbankanbindung in Web-Applikationen
Mag. Andreas Starzer weloveIT – EDV Dienstleistungen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Projekt Pokémon (CSL) Evaluation Technologien / Entwicklungsumgebungen Schlusspräsentation, Philip Iezzi, BDLI 2.
Client-Server-Modell
PHP PHP ( „PHP Hypertext Preprocessor") ist eine Skriptsprache
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
PHP:: Hypertext Preprocessor Einführung Praxis. PHP:: Hypertext Preprocessor Jetzt mal von der anderen Seite © All rights reversed2 PHP:: Hypertext Preprocessor.
Datenbanken im Web 1.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Geschichte - Entstehung - Was ist PHP? Einordnung - Allgemeines
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
WINLearn Technische Umsetzung. Basistechnologie Oberfläche in HTML JSP (JavaServerPages) zur Datenauswertung Datenhaltung: Datenbank oder Filesystem JDBC.
Oracle ADF FacesSeite 1 Oracle ADF Faces OPITZ CONSULTING Oracles Implementierung der JavaServer Faces Spezifikation.
Dynamische Webseiten CGI & co. © CGI - Lösung für alle ? Ja CGI kann alles tun, was man für Anwendungen braucht flexibel (beliebige.
© 2008 TravelTainment The Amadeus Leisure Group Webanwendungen mit Java - HttpServlets 17.Dezember 2010 Sebastian Olscher Erstprüfer: Hon.-Prof. Dr. H.
Einführung in AspectJ ● Inhalt: 1)Überblick 2)Elemente des crosscuttings in AspectJ 3)„Hello World“ in AspectJ 4)Wie Aspekte in Java verwoben werden 5)Join.
Verteilte Anwendungen: J2EE
 Präsentation transkript:

Datenanbindung in Webapplikationen

Überblick In diesem Kapitel: Datenpersistenz allgemeine Aspekte der Datenpersistenz in Webapplikationen Datenanbindung in serverseitigen Applikationen Webapplikationstechnologien: PHP, ASP, ASP.NET, JSP

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

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

Webapplikation mit Datenanbindung Ablauf einer Webseitenabfrage mit Datenbankzugriff 3. Aufruf von DB-Funktionen über DB-API Serverseitige Programme 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

Webapplikation mit Datenanbindung Ablauf einer Webseitenabfrage mit XML-Datenverarbeitung 1. HTTP-Request schicken Webclient (z.B. Browser) 7. HTTP-Response schicken 8. Response anzeigen 4. Ausführen der Funktionen im Filesystem 2. Request verarbeiten 3. Aufruf von XML APIs Serverseitige Programme XML Library 5. Ergebnis liefern 6. Response vorbereiten File- System Webserver Serverseite

Webapplikation mit Datenanbindung Beispielablauf einer Webseitenabfrage mit Web Service Invocations 4. Request verarbeiten 1. HTTP-Request schicken 2. Request verarbeiten 3. Web Service Request Webclient (z.B. Browser) Web Service X Serverseitige Programme Web Service Y 5. Web Service Response 6. Response vorbereiten 7. HTTP-Response schicken 8. Response anzeigen Webserver A Webserver B Serverseite

Technologien für Webapplikationen Überblick Datenbankschnittstellen ODBC/JDBC Native einige serverseitige Scriptumgebungen: PHP ASP, ASP.NET JSP ColdFusion Vergleich

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 Sprachen zB. für OCI-Funktionen in PHP für Oracle8 Binaries: Treiber oder einkompilierte Libs (z.B. MbSQL)

PHP PHP: Hypertext Preprocessor Datenanbindung 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

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>

ASP, ASP.NET Active Server Pages ASP.NET 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

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>

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> test.aspx 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 Class test.aspx.vb

JSP JavaServer Pages Datenanbindung Ä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>

Weitere... Common Gateway Interface (CGI) ColdFusion 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

Vergleich PHP ASP.NET JSP CGI Sprachen VB.NET, C# Java PERL, C/C++, ... DBS Alle native OLEDB, SQL-Server JDBC Alle Plattform WinNT, IIS Windows, Unix/Linux Kosten Freeware, Open Source Freeware X