Connection Pooling. Was ist das?? Unter Connection Pooling versteht man generell die Wiederverwendung physischer Datenbankverbindungen.

Größe: px
Ab Seite anzeigen:

Download "Connection Pooling. Was ist das?? Unter Connection Pooling versteht man generell die Wiederverwendung physischer Datenbankverbindungen."

Transkript

1 Connection Pooling Was ist das?? Unter Connection Pooling versteht man generell die Wiederverwendung physischer Datenbankverbindungen. Wo wird es eingesetzt?? Connection Pooling wird vor allem in Verbindung mit verteilten Mehrschicht-Anwendungen verwendet. Wozu das Ganze?? Connection Pooling hat den Sinn, den Performance-Aufwand physischer Datenbankverbindungen zu minimieren.

2 Bisherige Einschicht-Struktur Die Applikation ist nicht über mehrere Adressräume verteilt und erzeugt keinen Netzwerk- Overhead. Es existiert keine Kommunikation mit einem externen Database-Management-System. Der JDBC-Treiber ist in die Applikation eingebettet. Die Datenbank befindet sich im lokalen File-System der Geschäftsschicht. Es greift nur ein Benutzer auf die Datenbank zu.

3 Mehrschicht-Struktur Die Applikation ist über mehrere Adressräume verteilt und erzeugt Netzwerk-Overhead. Es existiert eine Kommunikation mit einem Database-Management-System. Die Datenbank befindet sich nicht im lokalen File-System der Geschäftsschicht. Viele Benutzer greifen auf die Datenbank zu. Datenbankzugriffe erfolgen über vorkonfigurierte Datasource-Komponenten. DB-Treiber bleiben dem Datenbank-Client verborgen. Datasourcen können nach dem Prinzip des Connection-Poolings arbeiten.

4 Problem Datenbankoperationen stellen innerhalb von Mehrschicht-Applikationen unter Berücksichtigung der Performance einen Flaschenhals dar. Zugriffe sind extern und durchlaufen Netzwerkschichten. Dazu kommt die Antwortzeit der Logik des Database-Management-Systems Eine besondere Rolle spielt die Datenbankverbindung

5 Performance-Analyse einer Datenbankverbindung Eine Datenbankverbindung ist für eine verteilte Anwendung besonders Performancekritisch. Das Performance-Verhalten lässt sich unter den Aspekten zweier Perspektiven analysieren: Aus zeitlicher Perspektive: Der Aufbau einer Verbindung nimmt aufgrund des Netzwerk-Overheads und vor allem wegen seiner Initialisierung sehr viel Zeit in Anspruch. Aus Perspektive der Ressourcen-Auslastung: Zur Initialisierung einer Verbindung werden vor allem auf DBMS-Seite eine Reihe von Ressourcen allokiert.

6 Performance-Analyse einer Datenbankverbindung Vor dem Hintergrund der Performance-Optimierung einer Datenbank-Anwendung führen diese beiden Perspektiven zu gegensätzlichen Konsequenzen: Aus zeitlicher Perspektive: Da der Verbindungsaufbau zur Datenbank sehr Zeit intensiv ist, macht es Sinn, für jede Benutzer-Session nur eine Verbindung zu öffnen und für die gesamte Dauer der Session exklusiv zur Verfügung zu stellen. Konsequenz: eher viele Verbindungen Aus Perspektive der Ressourcen-Auslastung: Da Datenbankverbindungen sehr Ressourcen intensiv sind, macht es Sinn, so wenige wie möglich gleichzeitig zu öffnen und demzufolge so wenig Ressourcen wie möglich zu binden. Konsequenz: eher wenige Verbindungen

7 Lösung: Wiederverwendung physischer Datenbankverbindungen Ein Client reserviert eine physische Datenbankverbindung, benutzt sie aber nicht direkt, sondern über ein Handle, der logischen Datenbankverbindung. Eine physische Datenbankverbindung steht einem Client nicht mehr exklusiv zur Verfügung, sondern nur solange, wie der Client sie benötigt. Eine physische Datenbankverbindung wird nicht vom Client geschlossen, sondern nur für die weitere Nutzung des selben oder eines anderen Clients durch Schließen der logischen Datenbankverbindung freigestellt. Die Verwaltung der physischen Datenbankverbindung übernimmt ein spezielles Verwaltungsobjekt: Das Pooled-Connection-Objekt

8 Pooled-Connection Eine Pooled-Connection verwaltet eine physische Datenbankverbindung. Sie stellt eine Schnittstelle bereit, über die Clients die physische Datenbankverbindung reservieren und die logische Datenbankverbindung erhalten können. Eine reservierte Verbindung wird nach Ablauf eines Timeouts wieder freigegeben. Eine Pooled-Connection lässt sich in Java als Alternative zum Driver-Manager verstehen.

9 Wiederverwendung einer physischen Datenbankverbindung mittels einer Pooled-Connection

10 Wiederverwendung mehrerer physischer Datenbankverbindungen Bei stark frequentierten Applikationen kommt es häufig vor, dass mehrere Komponenten gleichzeitig auf die Datenbank zugreifen müssen. Im Falle einer reservierten Pooled-Connection, müssen andere Komponenten auf die Freigabe der DB-Verbindung warten und sind während dieser Zeitspanne blockiert. Die Bereitstellung von weiteren Pooled-Connections, die auf dieselbe Datenbank referenzieren, löst das Problem. Die Menge aller Pooled-Connections zu einer Datenbank können ihrerseits in einem Pool verwaltet werden. Dieses Prinzip nennt man Connection-Pooling.

11 Connection-Pooling Der Connection-Pool ist skalierbar und kann temporär um weitere Pooled-Connections erweitert werden. Der Connection-Pooling-Manager stellt eine Schnittstelle bereit, über die Clients Pooled-Connections reservieren können. Er lässt sich in Java als Alternative zum Driver-Manager verstehen.

12 Zugriff auf Connection-Pooling-Dienste Connection-Pooling kommt im Rahmen von verteilten Anwendungen zum Einsatz. Verteilte Anwendungen lassen sich als eine Zusammenfassung eigenständiger Komponenten verstehen, die über mehrere Adressräumen hinweg installiert sind. Die Laufzeitumgebungen solcher Anwendungen sind Application-Server. Um sich über den eigenen Adressraum hinweg bekannt zu machen, müssen sich Komponenten Application-Server-weit mit einem eindeutigen Namen im Verzeichnis eines Namendienstes registrieren. Ein mit einer konkreten Datenbank assoziierter Connection-Pooling-Dienst lässt sich als eine Komponente verstehen, die ebenfalls im Namenverzeichnis des Application- Servers registriert sein muss. Komponenten bedienen sich des vom Application-Server zur Verfügung gestellten Namendienstes, um auf andere Komponenten, die im Namenverzeichnis registriert sind, gezielt zugreifen zu können.

13 Connection-Pooling in Java JDBC unterstützt Connection-Pooling ab der Version 2. Bestandteil der Java-Standard-Edition seit der Version 1.4 sowie der Java-Enterprise- Edition. Ergänzende Schnittstellen und Klassen sind unter dem Package javax.sql zu finden. Der Namendienst im Umfeld verteilter Java-Anwendungen heißt JNDI. Der Zugriff auf innerhalb des JNDI registrierter Komponenten erfolgt mittels einer speziellen lookup(..)-methode eines Context-Objektes der Laufzeitumgebung.

14 Connection-Pooling in Java JDBC 2 stellt zur Realisierung der Pooled-Connection und des Connection-Pooling- Dienstes drei Schnittstellen zur Verfügung: Pooled-Connection: javax.sql.pooledconnection Eine Realisierung muss neben der Verwaltung einer physischen DB-Verbindung auch eine zur Kommunikation mit dem Connection-Pool-Dienst umsetzen. Connection-Pooling-Dienst: javax.sql.connectionpooldatasource Eine Realisierung verwaltet einen Pool mit Pooled-Connection-Objekten. Datenquellen-Komponente: javax.sql.datasource Eine Realisierung dient Komponenten einer Verteilten Anwendung als Factory für Verbindungen zur Datenhaltung. Sie stellt die Verbindung zum Connection- Pooling-Dienst her und ist im Namendienst registriert.

15 Code-Beispiele Konfiguration und Einbindung einer ConnectionPoolDataSource Definition des Connection-Pools: com.dbaccess.connectionpoolds cpds = new com.dbaccess.connectionpoolds(); cpds.setservername("creamer"); cpds.setdatabasename("coffeebreak"); cpds.setportnumber(9040); cpds.setdescription("connection pooling " + "for COFFEEBREAK DBMS"); Context ctx = new InitialContext(); ctx.bind("jdbc/pool/coffeedb", cpds); Definition der Data-Source als Connection-Factory: com.applogic.pooleddatasource ds = new com.applogic.pooleddatasource(); ds.setdescription("produces pooled connections" + " to COFFEEBREAK"); ds.setdatasourcename("jdbc/pool/coffeedb"); Context ctx = new InitialContext(); ctx.bind("jdbc/coffeedb", ds); Zugriff auf eine ConnectionPoolDataSource und seine Verwendung Zugriff auf die Data-Source: Context ctx = new InitialContext(); ds = (DataSource)ctx.lookup("jdbc/coffeeDB"); Anforderung und Verwendung einer Datenbankverbindung: try { Connection con = ds.getconnection( "mylogin", "mypassword"); PreparedStatement pstmt = con.preparestatement("select...");... ResultSet rs = pstmt.executequery();... } catch (Exception ex { //... code to handle exceptions } finally { } if (con!= null) con.close(); JDBC-Tutorial (Kapitel 3.7 Using Data Sources):

16 Connection-Pooling unter Tomcat Innerhalb der Web-Applikation (web.xml) kann mit Hilfe des Tags <resource-ref> der Zugriff auf einen Connection-Pool bekannt gemacht werden: <resource-ref> <description>db Connection</description> <res-ref-name>jdbc/testdb</res-ref-name> <res-type>javax.sql.datasource</res-type> <res-auth>container</res-auth> </resource-ref> Der passende Connection-Pool wird innerhalb der Konfigurations-Datei (server.xml) mit Hilfe des <Resource>-Tags eingerichtet: <Resource name="jdbc/testdb" auth="container" type="javax.sql.datasource" maxactive="100" maxidle="30" maxwait="10000" username="app" password="app" driverclassname="org.apache.derby.jdbc.clientdriver" url="jdbc:derby://localhost/javatest"/> Unter Tomcat wird der Connection-Pool unter Verwendung des Jakarta-Commons Database-Connection-Pool (DBCP) realisiert. Siehe Tomcat HowTo:

Mehr Performance mit JDBC JAVA-Anwendungen und die Oracle-Datenbank. Carsten Czarski Business Unit Database Oracle Deutschland GmbH

Mehr Performance mit JDBC JAVA-Anwendungen und die Oracle-Datenbank. Carsten Czarski Business Unit Database Oracle Deutschland GmbH Mehr Performance mit JDBC JAVA-Anwendungen und die Oracle-Datenbank Carsten Czarski Business Unit Database Oracle Deutschland GmbH Oracle JDBC Treiber Versionen Datenbank-Release J D B C 10.1.0 9.2.0 9.0.1

Mehr

Java Database Connectivity. Gracin Denis, IB 4 C

Java Database Connectivity. Gracin Denis, IB 4 C Java Database Connectivity Gracin Denis, IB 4 C Agenda 1. JDBC-Architektur 2. Treiber der JDBC 2.1 Typ-1 Treiber 2.2 Typ-2 Treiber 2.3 Typ-3 Treiber 2.4 Typ-4 Treiber 3. Verbindungsablauf 4. Connection

Mehr

Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn

Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken SS 2010 Kapitel 8: Datenbank-Einbettung in Programmiersprachen Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher

Mehr

Wie kommen die Befehle zum DBMS

Wie kommen die Befehle zum DBMS Wie kommen die Befehle zum DBMS Dr. Karsten Tolle Datenbanken und Informationssysteme Wie kommen die Befehle zum DBMS Bisher gesehen: SQL direkt zum DBMS Workbench Kommandozeile IBM Query Tool Weitere?

Mehr

4.2 Workshop EJB. Entwicklung von EJB-Anwendungen

4.2 Workshop EJB. Entwicklung von EJB-Anwendungen 4.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt

Mehr

Oracle & Java HOW TO

Oracle & Java HOW TO Oracle & Java HOW TO Helge Janicke, Niels-Peter de Witt, Karsten Wolke 21. Januar 2002 Inhaltsverzeichnis 1 Java-Anbindung an Oracle-DB 2 2 Benötigte Programme und Daten 2 3 Einbinden der Klassen 2 4 Aufbau

Mehr

Enterprise JavaBeans (mit JBoss)

Enterprise JavaBeans (mit JBoss) Enterprise JavaBeans (mit JBoss) Christian Hülsmeier 30.10.2004 Überblick Rekapitulation des vorhandenen Wissen Entity-Beans Session-Beans Deployment-Deskriptor Sichten / Client-Anwendungen Applikationsserver

Mehr

Java und Datenbanksysteme Datenbankanbindung mit JDBC

Java und Datenbanksysteme Datenbankanbindung mit JDBC Java und Datenbanksysteme Datenbankanbindung mit JDBC 30.05.2001 Stefan Niederhauser sn@atelier-w.ch 1-Einführung Datenbanksysteme Java und Datenbanken: JDBC Geschichte der JDBC-Versionen Vergleich von

Mehr

Verteilte Systeme - Java Networking (Sockets) 2 -

Verteilte Systeme - Java Networking (Sockets) 2 - Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:

Mehr

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Was ist JDBC? Hauptsächlich eine Sammlung von Java Klassen und Schnittstellen für eine einfache Verbindung von Java Programmen

Mehr

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi Projektgruppe Thomas Kühne Komponentenbasiertes Software Engineering mit OSGi Anforderungen der PG IDSE an ein Komponenten- Client Nativer Client Web Client Alternativen IDSE Nutzer Szenario Pipe IDSE

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Spezielle Technik aus dem Java-Umfeld Ausführung von Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VMs Aufruf

Mehr

Webbasierte Informationssysteme

Webbasierte Informationssysteme SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)

Mehr

5.2 Workshop EJB. Entwicklung von EJB-Anwendungen. Das JOnAS-System

5.2 Workshop EJB. Entwicklung von EJB-Anwendungen. Das JOnAS-System 5.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt

Mehr

Datenbankanwendungen (JDBC)

Datenbankanwendungen (JDBC) Datenbankanwendungen (JDBC) Hierarchie: Connection Transaction Statement Connection Aufbau (klassisch): Registrierung des JDBC Driver beim DriverManager: Class.forName(JDBC Driver); Eigentlicher Verbindungsaufbau

Mehr

WebLogic Server im Zusammenspiel mit Real Application Cluster

WebLogic Server im Zusammenspiel mit Real Application Cluster WebLogic Server im Zusammenspiel mit Real Application Cluster Michael Bräuer Leitender Systemberater Sylvie Lübeck Leitende Systemberaterin ORACLE Deutschland B.V. & Co. KG The following is intended to

Mehr

WebLogic - Der beste Application Server für die Oracle Datenbank

WebLogic - Der beste Application Server für die Oracle Datenbank WebLogic - Der beste Application Server für die Oracle Datenbank Ulf Lämmerhirt / Michael Fuhr Niederlassung Hamburg / Frankfurt Schlüsselworte WebLogic Server, Oracle Database, Hochverfügbarkeit, JDBC

Mehr

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann. JDBC in 5 Schritten JDBC (Java Database Connectivity) ist eine Sammlung von Klassen und Schnittstellen, mit deren Hilfe man Verbindungen zwischen Javaprogrammen und Datenbanken herstellen kann. 1 Einrichten

Mehr

Willkommen. Datenbanken und Anbindung

Willkommen. Datenbanken und Anbindung Willkommen Datenbanken und Anbindung Welche stehen zur Wahl? MySQL Sehr weit verbreitetes DBS (YT, FB, Twitter) Open-Source und Enterprise-Version Libs in C/C++ und Java verfügbar Grundsätzlich ist ein

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Verteilte Systeme. SoSe Universität Siegen. Tel.: 0271/ , Büro: H-B Stand: 14. Mai Verteilte Systeme. SoSe

Verteilte Systeme. SoSe Universität Siegen. Tel.: 0271/ , Büro: H-B Stand: 14. Mai Verteilte Systeme. SoSe Verteilte Systeme SoSe 2018 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. Mai 2018 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14)

Mehr

Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen

Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen Brit Engel Überblick Beschreibung Aufgabenstellung Entwurf der Komponenten Verwaltung Funktionsbereiche

Mehr

Objektorientierte Datenbanken

Objektorientierte Datenbanken Objektorientierte Datenbanken Vorlesung 9 Sebastian Iwanowski FH Wedel Einführung in das objektrelationale Mapping: JDBC: Java Database Connectivity EJB: Enterprise Java Beans Motivation und Einführung

Mehr

Erzeugungsmuster. Kapselung der Objekt-Erzeugung

Erzeugungsmuster. Kapselung der Objekt-Erzeugung Erzeugungsmuster Kapselung der Objekt-Erzeugung Definition Erzeugungsmuster dienen für die Lose Koppelung, bei der erst zur Laufzeit der Typ des zu erzeugenden Objekts festgelegt wird. Abstract Factory

Mehr

Fifty Shades of Red. Oder wie man es schafft, dass Entwickler (endlich) unter Ihrer eigenen (schlechten) Software leiden müssen

Fifty Shades of Red. Oder wie man es schafft, dass Entwickler (endlich) unter Ihrer eigenen (schlechten) Software leiden müssen Oder wie man es schafft, dass Entwickler (endlich) unter Ihrer eigenen (schlechten) Software leiden müssen Mirko Seifert, DevBoost GmbH JUG Saxony Day 02.10.2015 Dresden Unser Leben als Softwareentwickler

Mehr

EJB jar.xml und Name Service (JNDI)

EJB jar.xml und Name Service (JNDI) EJB jar.xml und Name Service (JNDI) Applikationsserver Prof. Dr. Ch. Reich rch@fh furtwangen.de http://www.informatik.fh furtwangen.de/~reich/appserver/index.html Beschreibung der Beans mit Deployment

Mehr

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2016 Kapitel 1 Grundlagen Vorlesung: PD Dr. Peer Kröger http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii

Mehr

Zend PHP Cloud Application Platform

Zend PHP Cloud Application Platform Zend PHP Cloud Application Platform Jan Burkl System Engineer All rights reserved. Zend Technologies, Inc. Zend PHP Cloud App Platform Ist das ein neues Produkt? Nein! Es ist eine neue(re) Art des Arbeitens.

Mehr

Klausur Datenbanken II

Klausur Datenbanken II Klausur Datenbanken II 8.3.2001 Name Vorname Semester Matrikelnr Aufgabe Punkte maximal 1 8 2 8 3 3 4 3 5 4 6 6 7 6 8 6 9 [Zusatz] [4] Summe 44 Punkte erreicht Bitte geben Sie die Lösungen möglichst direkt

Mehr

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. 1 In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. Zunächst stellt sich die Frage: Warum soll ich mich mit der Architektur eines DBMS beschäftigen?

Mehr

Archivierung in DBMS

Archivierung in DBMS Archivierung in DBMS Marcus Brisgen 9. März 2004 Gliederung Gliederung Motivation Archivierung Grundlagen Anwendungsorientiertes Archivieren Architekturen Erweiterungen ASQL XML-Archivierungsoperator Beispiele

Mehr

Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.

Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05. Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational

Mehr

Java Database Connectivity-API (JDBC)

Java Database Connectivity-API (JDBC) Java Database Connectivity-API (JDBC) Motivation Design Grundlagen Typen Metadaten Transaktionen Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Motivation Problem: Zugriff auf ein DBMS ist Herstellerabhängig

Mehr

Unternehmensdokumente mit dem XML Publisher erzeugen

Unternehmensdokumente mit dem XML Publisher erzeugen Unternehmensdokumente mit dem XML Publisher erzeugen Jürgen Menge TSBU Middleware ORACLE Deutschland GmbH XML-Publisher Moderne Lösung zur Entwicklung und Verteilung von Geschäftsdokumenten (Output Management)

Mehr

Wie kommen die Befehle zum DBMS

Wie kommen die Befehle zum DBMS Wie kommen die Befehle zum DBMS Dr. Karsten Tolle Datenbanken und Informationssysteme Wie kommen die Befehle zum DBMS Bisher gesehen: SQL direkt zum DBMS MySQL Workbench / HeidiSQL Kommandozeile Weitere?

Mehr

Die Magie von MBeans und JMX. DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV

Die Magie von MBeans und JMX. DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV Die Magie von MBeans und JMX DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV Bio Andreas Chatziantoniou Freelance Oracle Fusion Middleware Consultant 16 Jahre Oracle Erfahrung/26 Jahre IT (Unix/C) Oracle

Mehr

Programmieren 2 12 Netzwerke

Programmieren 2 12 Netzwerke Programmieren 2 12 Netzwerke Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 Motivation Datenaustausch zwischen Programmen Spielstand Chat

Mehr

Tutorial 7 TEIL 2/2. Untersuchung von ebusiness Anwendungen auf der Basis des IBM WebSphere Developer V 7.0

Tutorial 7 TEIL 2/2. Untersuchung von ebusiness Anwendungen auf der Basis des IBM WebSphere Developer V 7.0 Tutorial 7 TEIL 2/2 Untersuchung von ebusiness Anwendungen auf der Basis des IBM WebSphere Developer V 7.0 Copyright Institut für Informatik, Universität Leipzig Hinweise: Die Arbeiten werden unter Windows

Mehr

Datenbanken unter J++ - Teil 2

Datenbanken unter J++ - Teil 2 Eckart Modrow Datenbanken mit J++ S. 1 Datenbanken unter J++ - Teil 2 Inhalt: 3. Zugriff auf Datenbanken 3.1 OBDC-Treiber installieren und einrichten 3.2 Auf OBDC-Verknüpfungen zugreifen 3.3 SQL-Abfragen

Mehr

PHP- Umgang mit Datenbanken (1)

PHP- Umgang mit Datenbanken (1) PHP- Umgang mit Datenbanken (1) Weitere Funktionen zum Umgang mit Datenbanken (Erzeugen, Löschen) und Tabellen (Erzeugen, Löschen) Zum Beispiel für das Erzeugen einer neuen Datenbank $dbname= blumendb

Mehr

Enterprise JavaBeans Überblick: 12. Session Facade Einleitung 12.2 Problem 12.3 Lösung. Prof. Dr. Björn Dreher Liste V Enterprise JavaBeans 460

Enterprise JavaBeans Überblick: 12. Session Facade Einleitung 12.2 Problem 12.3 Lösung. Prof. Dr. Björn Dreher Liste V Enterprise JavaBeans 460 Enterprise JavaBeans Überblick 1. Überblick Komponententechnologien 2. Einführung 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Kapitel 10. JDBC und SQLJ. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1

Kapitel 10. JDBC und SQLJ. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1 Kapitel 10 JDBC und SQLJ 1 JDBC und SQLJ Bisher: Einbettung von SQL (statisch bzw. dynamisch) in C, C++, COBOL, ADA (embedded SQL) bzw. prozedurale Erweiterungen für SQL in Oracle (PL/SQL) Was ist mit

Mehr

Session Beans & Servlet Integration. Ralf Gitzel

Session Beans & Servlet Integration. Ralf Gitzel s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Aufbau einer Stateless s Stateful s Web Client Offene Antwort von

Mehr

Parallele und Verteilte Systeme

Parallele und Verteilte Systeme Parallele und Verteilte Systeme Einführung in die Netzwerk Programmierung mit Java : JavaIDL Hello World (C) J.M.Joller 1 Zeitlicher Ablauf Hello World Übersicht IDL Interface Beschreibung Der Client (Der

Mehr

Enterprise JavaBeans Überblick: 17. Enterprise Information System Schicht

Enterprise JavaBeans Überblick: 17. Enterprise Information System Schicht Enterprise JavaBeans Überblick 1. Überblick Komponententechnologien 2. Einführung 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007 Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung

Mehr

JDBC Datenzugriff aus Java ETIS SS04

JDBC Datenzugriff aus Java ETIS SS04 JDBC Datenzugriff aus Java ETIS SS04 Gliederung Motivation Bestandteile Fehlerbehandlung Metadaten Zusammenfassung JDBC 2 Motivation(I) Standard für Zugriff auf Datenquellen aus Java- Anwendungen RDBs,

Mehr

Tutorial 8. Tutorial 8. Installation und Konfiguration von DB2Connect

Tutorial 8. Tutorial 8. Installation und Konfiguration von DB2Connect Tutorial 8 Installation und Konfiguration von DB2Connect Ziel dieses Tutorials ist es, Verbindung mit DB2 auf dem OS/390 Rechner der Universität Leipzig ( http://jedi.informatik.uni-leipzig.de ) herzustellen.

Mehr

XML Publisher die universelle Lösung für Geschäftsdokumente

XML Publisher die universelle Lösung für Geschäftsdokumente XML Publisher die universelle Lösung für Geschäftsdokumente Jürgen Menge TSBU Middleware ORACLE Deutschland GmbH Moderne Lösung zur Entwicklung, Erzeugung und Verteilung von Geschäftsdokumenten (Output

Mehr

Datenbank und Informationssysteme

Datenbank und Informationssysteme Datenbank und Informationssysteme Inhaltsverzeichnis 1 Programmierung von Datenbankzugriffen 3 1.1 Architektur des SQL/CLI am Beispiel JDBC................... 4 1.2 Anfragen und Ergebnismengen in JDBC......................

Mehr

RELATIONONALE DATENBANKEN MIT JDBC

RELATIONONALE DATENBANKEN MIT JDBC RELATIONONALE DATENBANKEN MIT JDBC Christoph Süsens 07.05.2012 Inhalt Abbildungsverzeichnis...3 Java Database Connection JDBC...4 Herstellen einer Verbindung JDBC - DBMS...4 Treiber Installation Beispiel:

Mehr

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Die Herausforderung: Hostanbindung Viele Unternehmen besitzen Mainframe- und Legacy-Anwendungen, so genannte Enterprise Information Systems (EIS),

Mehr

Programmierung von verteilten Systemen und Webanwendungen mit Java EE

Programmierung von verteilten Systemen und Webanwendungen mit Java EE Programmierung von verteilten Systemen und Webanwendungen mit Java EE Frank Müller-Hofmann Martin Hiller Gerhard Wanner Programmierung von verteilten Systemen und Webanwendungen mit Java EE Erste Schritte

Mehr

6.9 Java Server Pages

6.9 Java Server Pages DocumentCollection dc = db.ftsearch(abfrage); Document d = dc.getfirstdocument(); while (d!= 0) { String Name = db.gettitle(); out.println(name + ""); d = dc.getnextdocument(); catch (NotesException

Mehr

Realtime Daten-Rückschreibung in Tableau mit der Extensions API //

Realtime Daten-Rückschreibung in Tableau mit der Extensions API // Was wir vorhersagen, soll auch eintreffen! Realtime Daten-Rückschreibung in Tableau mit der Extensions API // Pascal Muth Zusammenfassung In diesem Whitepaper wird die Tableau Extensions API von Tableau

Mehr

Java: MySQL-Anbindung mit JDBC.

Java: MySQL-Anbindung mit JDBC. Java: MySQL-Anbindung mit JDBC Vorarbeiten Wir brauchen: - MySQL-Server - JDBC-Treiber - (Import java.sql.*) Vorarbeiten MySQL-Server in unserem Falle: WAMP (= Apache) (runterladen, installieren, starten)

Mehr

PLATO-Systemanforderungen

PLATO-Systemanforderungen PLATO-Systemanforderungen ALLGEMEINES Für die Mehrplatzinstallation von PLATO wird der Einsatz eines dedizierten Servers und ein funktionierendes Netzwerk mit Vollzugriff auf den PLATO-Ordner (Empfehlung:

Mehr

Abschluss Einblick und Ausblick

Abschluss Einblick und Ausblick Abschluss Einblick und Ausblick Prof. Dr. T. Kudraß 1 Benutzer Komponenten eines DBMS (Überblick) I/O-Prozessor Output-Generierung Parser für selbst. oder eingebettete Kommandos Precompiler Autorisierungs-Kontrolle

Mehr

Best Practice - ODBC

Best Practice - ODBC Best Practice - ODBC Copyright 206 Lexmark. All rights reserved. Lexmark is a trademark of Lexmark International, Inc., registered in the U.S. and/or other countries. All other trademarks are the property

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS

Mehr

MySQL, Java und einiges mehr

MySQL, Java und einiges mehr MySQL, Java und einiges mehr Client Der Browser Firefox Chrome Safari Internet Explorer URL http://localhost:8080/html/index.html Internet Die darzustellende Webseite HTML Server Apache Tomcat Jetty

Mehr

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks Eine Untersuchung der Funktionen des Apache Wicket Webframeworks Seminararbeit von Olaf Matticzk 1 15.01.2016 (c) by synaix 2016 synaix...your business as a service. Agenda 1. Einleitung 2. Webanwendungen

Mehr

OMS-FS. Objekt-Memory-Server - Dateisystem-Schnittstelle TOBIAS GROß UNIVERSITÄT DES SAARLANDES 17. NOVEMBER Betreuer : Michael Schneider

OMS-FS. Objekt-Memory-Server - Dateisystem-Schnittstelle TOBIAS GROß UNIVERSITÄT DES SAARLANDES 17. NOVEMBER Betreuer : Michael Schneider Objekt-Memory-Server - Dateisystem-Schnittstelle TOBIAS GROß UNIVERSITÄT DES SAARLANDES 17. NOVEMBER 2010 Betreuer : Michael Schneider Einleitung Ohne OMS-FS Daten vom Chip auslesen Dateien von Hand auf

Mehr

Beispiel: DB-Mock (1/7)

Beispiel: DB-Mock (1/7) Beispiel: DB-Mock (1/7) Aufgabe: DB, auf die vereinfachend nur lesend zugeriffen wird mocken warum: benötigte keine DB-Lizenz, garantiert gleiche Werte ohne aufwändiges reset, kein Zeitverlust durch Verbindungsaufbau

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

JNDI und JAAS am Beispiel des Moduls directoryservices. Adapter für Authentifizierungs- und Verzeichnisdienste der Fiducia

JNDI und JAAS am Beispiel des Moduls directoryservices. Adapter für Authentifizierungs- und Verzeichnisdienste der Fiducia JNDI und JAAS am Beispiel des Moduls directoryservices Adapter für Authentifizierungs- und Verzeichnisdienste der Fiducia Ziel dieses Vortrags Kurzbeschreibung der Verzeichnisdienste, die die Fiducia betreibt

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Komponententechnologien 2. Einführung 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Der lokale und verteilte Fall

Der lokale und verteilte Fall Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf

Mehr

1a) SQL Stored Procedure via IDs

1a) SQL Stored Procedure via IDs 1a) SQL Stored Procedure via IDs Erstellen Sie analog zu Aufgabe 2d) des ersten Übungsblatts eine SQL Stored Procedure, welche den Freundschaftsgrad zweier Benutzer eines sozialen Netzwerks aktualisiert.dazu

Mehr

Java Database Connectivity-API (JDBC)

Java Database Connectivity-API (JDBC) Java Database Connectivity-API (JDBC) Motivation Design Grundlagen Typen Metadaten Transaktionen Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Motivation Problem: Zugriff auf ein DBMS ist herstellerabhängig

Mehr

WildFly Application Server Administration

WildFly Application Server Administration WildFly Application Server Administration Seminarunterlage Version: 1.04 Version 1.04 vom 18. Januar 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Oracle Weblogic Administration Grundlagen

Oracle Weblogic Administration Grundlagen Oracle Weblogic Administration Grundlagen Seminarunterlage Version: 1.12 Version 1.12 vom 15. Juni 2018 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Sommersemester 2018 Michael Theis, Lehrbeauftragter 2 Servlet API Websockets JSF JAX-WS JAX-RS JMS JAXB JSON-P JEE Enterprise Application

Mehr

JDBC. Java DataBase Connectivity

JDBC. Java DataBase Connectivity JDBC Java DataBase Connectivity JDBC-Schichten JDBC besteht aus 2 Teilen, 1. aus Datenbanktreibern, die den Anschluß von Java-Anwendungen an Datenbanksysteme wie Sybase, DB/2, Oracle, MS ACCESS oder Mini

Mehr

Kapitel DB:VI (Fortsetzung)

Kapitel DB:VI (Fortsetzung) Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus

Mehr

Anleitung zur Fleet & Servicemanagement Evatic Schnittstelle

Anleitung zur Fleet & Servicemanagement Evatic Schnittstelle Anleitung zur Fleet & Servicemanagement Evatic Schnittstelle Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung... 3 2 Hinweise zur Verbindungseinrichtung zum Evatic Server... 3 3 Konfiguration der docuform

Mehr

Installation von xpetstore auf Tomcat unter Verwendung von C-JDBC und eines Clusters aus HypersonicSQL Backends

Installation von xpetstore auf Tomcat unter Verwendung von C-JDBC und eines Clusters aus HypersonicSQL Backends Installation von xpetstore auf Tomcat unter Verwendung von C-JDBC und eines Clusters aus HypersonicSQL Backends Nicolas Modrzyk (Nicolas.Modrzyk@inrialpes.fr) Tuesday, November 09, 2004 Version 1.0 1.

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation spezielle Technik aus dem Java-Umfeld Ausführung der Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VM s Aufruf

Mehr

Neues Lizenzmodell Perpetual Licensing Microsoft Dynamics NAV 2013

Neues Lizenzmodell Perpetual Licensing Microsoft Dynamics NAV 2013 Neues Lizenzmodell Perpetual Licensing Microsoft Dynamics NAV 2013 Grundaufbau Grundpaket Kernfunktionen Buchhaltung und Warenwirtschaft Basis jeder Installation Keine Beschränkung auf Systemseite (Prozessoren,

Mehr

Erfahrungsbericht: JBoss und MySQL

Erfahrungsbericht: JBoss und MySQL Freie Universität Berlin Autor: Alexander Steidinger Datum: 29.4.2001 Erfahrungsbericht: JBoss und MySQL Projekt: verteilte Informationssysteme Erfahrungsbericht: Zusammenspiel von JBoss und MySQL anhand

Mehr

ERSTELLUNG EINES DATENEXPORTS MIT ORGAMAX

ERSTELLUNG EINES DATENEXPORTS MIT ORGAMAX ERSTELLUNG EINES DATENEXPORTS MIT ORGAMAX Inhalt 1 Einführung:... 1 2 Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)... 2 3 Manuelle Einrichtung des ODBC-Zugriffs (direkt am Server)...

Mehr

Stefan Zörner. Portlets. Portalkomponenten in Java. ntwickier

Stefan Zörner. Portlets. Portalkomponenten in Java. ntwickier Stefan Zörner Portlets Portalkomponenten in Java ntwickier Vorwort 9 1 Portalkomponenten in Java 11 1.1 Hype beiseite 11 Was ist ein Portal? 11 Portalkomponenten in Java 14 Das Portlet-Ökosystem 16 1.2

Mehr

Darüber hinaus bietet SQuirreL eine Vielzahl von Plug-ins, mit denen der Funktionsumfang des Programms erheblich erweitert werden kann.

Darüber hinaus bietet SQuirreL eine Vielzahl von Plug-ins, mit denen der Funktionsumfang des Programms erheblich erweitert werden kann. 1. SQuirreL installieren QuirreL Nachdem über einen langen Zeitraum Datenbanksysteme (DBS) vorwiegend über die Kommandozeile gesteuert wurden, hat sich in den letzten Jahren die Nutzung von grafischen

Mehr

Google Gears Offline Web?

Google Gears Offline Web? Google Gears ist eine Browsererweiterung, die es in sich hat. Dem Webanwendungsentwickler werden Dienste bereitgestellt, die es ermöglichen, Webanwendungen so zu schreiben, dass eine Offline-Arbeit möglich

Mehr

Programmieren und DBMS. Dr. Karsten Tolle

Programmieren und DBMS. Dr. Karsten Tolle Programmieren und DBMS Dr. Karsten Tolle Wie kommen die Befehle zum DBMS Bisher gesehen: SQL direkt zum DBMS MySQL Workbench / HeidiSQL Kommandozeile Weitere? Datenbank Administrator Fortgeschrittener

Mehr