OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle

Ähnliche Dokumente
Daten Bank. 6. Vorlesung

Programmieren und DBMS. Dr. Karsten Tolle

Daten Bank. 6. Vorlesung

OR-Mapping. WS2008/2009 DBIS/Dr. Karsten Tolle

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Eclipse und EclipseLink

Softwareentwicklung mit Enterprise JAVA Beans

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

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

Migration der Datenbankzugriffsschnittstelle in Client-/Server-Systemen

Enterprise JavaBeans (mit JBoss)

Java-Persistenz-Architekturen. Freiberuflicher Entwickler und Autor. DOAG Konferenz 1.12.

Choosing Database Technology for Object-Oriented Applications

Ausgabe: Abteilungen Summe der Fehltage einer Abteilung. Nur für Mitarbeiter deren Fehltage < 3 Nur Abteilungen deren Fehltage-Summe > 1

Objektorientierte Datenbanken

NoSQL mit Postgres 15. Juni 2015

Datenzugriffskomponente mit JPA 2.1

Java-Objekte mit SQL verheiraten

Objekt-relationales Mapping und Performance-Tuning

Criteria API Komplexe SQL-Queries mit Eclipselink bauen 1

Weather forecast in Accra

Rapid Java wie mit Forms

Inhaltsverzeichnis. Bernd Müller, Harald Wehr. Java Persistence API 2. Hibernate, EclipseLink, OpenJPA und Erweiterungen ISBN:

Persistenz unter Kontrolle mit JDBI für Java

O/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010

Transaktionen in Praxis. Dr. Karsten Tolle Vorl

Java Persistence API. Phillip Ghadir Oliver Tigges

Business Applika-onen schnell entwickeln JVx Framework - Live!

MyCoRe > V1.0: Technische Weiterentwicklung

Java EE Projektseminar

Oracle JDeveloper 10 g

5. Programmierschnittstellen für XML

Enterprise JavaBeans Überblick

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken

5. Programmierschnittstellen für XML

Themenkomplexe. Weiterführende Konzepte relationaler Datenbanken. Objektrelationale Abbildungsschicht. XML und Datenbanken

Java.NET Web-Technologien Mobile

IDS Lizenzierung für IDS und HDR. Primärserver IDS Lizenz HDR Lizenz

Accelerating Information Technology Innovation

Rene Böing, Alexander Kuhn, Marc Wilmes Einführung in Spring und Hibernate

Gregor Raschke 2008 HIBERNATE. Eine Einführung

Datenbanken 1 Datenbanken SPO 2014 SPO 2007 Belegnummer Belegnummer

EJB 3 - Ein Blick über den Tellerrand. Heiko W. Rupp <hwr@pilhuhn.de>

Enterprise JavaBeans Überblick

Wie kommen die Befehle zum DBMS

4. Objektrelationales Mapping Grundlagen der Programmierung II (Java)

Thomas Sillmann. Swift im Detail HANSER

JDO Java Data Objects

TopLink. das performante und flexible Persistenz- Framework

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

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009

Datenbankpraktikum, Gruppe F. JPA mit Hibernate. Alexander Stautner, Harald Zauner, Sascha Schreier

Datenbanken Datenbanken 1 Belegnummer Belegnummer

NoSQL Datenbanken EIN ÜBERBLICK ÜBER NICHT-RELATIONALE DATENBANKEN UND DEREN POTENTIALE IM ALLGEMEINEN UND IN DER INDUSTRIE

ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel

1. Einführung. Datenbanken Grundlagen

General info on using shopping carts with Ogone

Objekt-relationales Datenbanksystem Oracle

Das Leben der Anderen

Neue Welten: Externe Daten mit APEX nutzen

Der Tiger im Tank: PL/SQL-Logik in Java-Anwendungen optimal nutzen

EJB 3.0 alles wird einfacher. Stephan Metzler, eurolink SWITZERLAND

Richard Oates Thomas Langer Stefan Wille Torsten Lueckow Gerald Bachlmayr. Spring & Hibernate. Eine praxisbezogene Einführung HANSER

Demo Kino: Der Herr der Wolken Die Gefährten

Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Objektrelationale und erweiterbare Datenbanksysteme

Programmierung von Java- Webanwendungen. paluno

ADF Persistenzmechanismen

2 Anlegen und Konfigurieren von Datenbanken 35

.NETUser. René Leupold Patrick Weibel. Group Bern. Follow dnugbe on twitter

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

Java Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation

Application Development Framework (ADF) Teil 3: Standardisierte Persistenzmechanismen in Verbindung mit ADF

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten)

Moderne Datenbankkonzepte

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB

Hibernate Eine Einführung

Spring & Hibernate Eine praxisbezogene Einführung

Enterprise JavaBeans Überblick

Eclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt

Spring & Hibernate HANSER. Eine praxisbezogene Einführung. Richard Oates Thomas Langer Stefan Wille Torsten Lueckow Gerald Bachlmayr

Persistenz. Ralf Gitzel

Application Servers. Application Server JBoss Java Management Extensions (JMX) Dynamische Rekonfigurierung

Vorlesung Datenbanken II SS 2006

Übungsaufgabe Transaktion als Middleware

Geschachtelte Klassen

Anwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie

ColdFusion 8 PDF-Integration

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Oracle9i Designer. Rainer Willems. Page 1. Leitender Systemberater Server Technology Competence Center Frankfurt Oracle Deutschland GmbH

Spring Dynamic Modules for OSGi Service Platforms

DOAG HC ApEx Workshop. OPITZ CONSULTING GmbH 2009 Seite 1

Softwareentwicklung mit Enterprise JAVA Beans

Entwurf des Datenbanksystems (DBS)

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Datenbanksysteme I Übung: JDBC. Jana Bauckmann

Transkript:

OO Programmiersprache vs relationales Model

Vorgehen bisher Erstellen eines ER-Diagramms Übersetzen in das relationale Datenmodell Zugriff auf das relationale Datenmodell aus z.b. Java ER rel. Modell OO Sprache Person Person

Object-relational Impedance Definition Mismatch Der Object-relational Impedance Mismatch (kurz: IM) bezeichnet die Unverträglichkeit zwischen dem relationalen Datenmodell und dem objektorientierten Programmierparadigma.

Probleme Rel. Modell OO Identität Primary Key / Daten Object Identifier (intern) Generalisierung Datenkapselung Beziehungen zwischen Objekten Interaktionen zwischen Objekten Wird nicht direkt unterstützt! Wird nicht direkt unterstützt! Teilweise durch Foreign Keys Wird nicht direkt unterstützt! Vererbung enthalten Zugriff nur über Methoden über Methoden, Attribute über Methoden Trigger und Stored Procedures können dies teilweise simulieren! weiterführende Literatur: http://www.cs.utexas.edu/~wcook/drafts/2005/pldbproblem.pdf

Java - Serializieren Serializieren := Speichern eines Objektes auf einen Festspeicher. Man spricht auch von deflating oder marshalling. Deserializieren (inflating oder unmarshalling) := wieder Laden Serializieren via Java: Alle relevanten Objekte müssen das Interface java.io.serializable implementieren.

Unmarshalling, Hydrating or Object Retriving bezeichnet den Vorgang aus einem Abfrageergebnis konkrete Objekte zu erzeugen. select * from Mitarbeiter where PNR > 12;

Hilfe? wie kann man automatisiert Zustände von Objekten zur Datenbank synchronisieren? Abbildungen und Object Retrival handhaben? das ganze effizent gestalten? DB Prog.

anderer DBMS Ansatz DB Prog. Probleme würden hinfällig, wenn man eine OO-Datenbank nutzen würde Viele DBMS bieten OO-Features an, man spricht auch von ORDBMS (Objektrelationales Datenbankmanagementsystem) z.b. Oracle, IBM DB2

OR-Mapper DB OR-Mapper Prog. Framework Java Persistence API (JPA) Hibernate (Nhibernate für.net) Beschreibung Ist eine Schnittstelle für die objektrelationale Abbildung von POJOs (Plain old Java Object). Wurde im Rahmen der EJB 3.0 von der Software Expert Group als Teil der JSR 220 entwickelt und herausgegeben. Sie soll die besten Ideen der APIs von Hibernate, Toplink und JDO beinhalten. Open-Source Framework für Java entwickelt von der JBoss Community. Setzt auch die JPA um (Hibernate EntityManager). Hibernate wird von den meisten als die Referenz für die Lösung des IM im Open-Source- Bereich für Java gesehen.

EJB Enterprise Java Bean Standardisierte Komponente innerhalb JEE (Java Platform Enterprise Edition) Zurzeit ist EJB 3.1 aktuell

EJB Enterprise Java Bean

Praxis / Live

Code auf der DB-Server Seite Stored Funtions, Stored Procedures, Trigger SQL-Statements werden auf der Serverseite gehalten Schleifen, Bedingungen etc. vorhanden (aber Syntax oft abh. vom DBMS!) Wann insb. ist dies von Vorteil? Tutorials: http://www.mysqltutorial.org/mysql-stored-procedure-tutorial.aspx

http://www.mysqltutorial.org/stored-procedures-parameters.aspx IN, OUT und INOUT bei Stored Precedures IN is the default mode. When you define an IN parameter in a stored procedure, the calling program has to pass an argument to the stored procedure. In addition, the value of an IN parameter is protected. It means that even the value of the IN parameter is changed inside the stored procedure, its original value is retained after the stored procedure ends. In other words, the stored procedure only works on the copy of the IN parameter. OUT the value of an OUT parameter can be changed inside the stored procedure and its new value is passed back to the calling program. Notice that the stored procedure cannot access the initial value of the OUT parameter when it starts. INOUT an INOUT parameter is the combination of IN parameter and OUT parameter. It means that the calling program may pass the argument, and the stored procedure can modify the INOUT parameter and pass the new value back to the calling program.