J2EE Conformance von JDBC 2.0 - Middleware und EJB Applikation Server Detlef KünzelSystemberater +49 (0)89 96271 224.

Slides:



Advertisements
Ähnliche Präsentationen
EJB, Norbert Schuler1 Enterprise Java Beans z Was sind Enterprise JavaBeans? z Historie z Motivation z Architektur z Konstruktion eines Enterprise.
Advertisements

Object Relational Mapping
Objektrelationales Mapping mit JPA
Objektrelationales Mapping mit JPA Advanced Topics Jonas Bandi Simon Martinelli.
E-Commerce Shop System
RMI RMI Systemarchitektur Servlet Cont. Präsentation Logik Datenbank Servlet Cont. Servlet Cont. EJB-Container Oracle RMI JDBC.
1 Kapitel 9: Datenbankapplikationen. 2 Datenbankapplikationen MS Access Embedded SQL JDBC Application JDBC Applet Java Servlet Java Server Pages Cold.
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
Was ist J2EE Die Vorteile von J2EE J2EE Modell Die Komponente von J2EE
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
Enterprise Java Beans (EJB) VL Anwendungssysteme Freitag, Gerald Weber.
WS06/07Prof. Dr. Andreas Schmietendorf1 Programmierung von Client/Server- Anwendungen Übersicht zur Vorlesung.
Internet-Datenbanken
Datenbankzugriff im WWW (Kommerzielle Systeme)
Erweiterung B2B Usermanagement / LDAP-Anbindung
Objektrelationales Mapping mit JPA Working with Persistent Objects Jonas Bandi Simon Martinelli.
Objektrelationales Mapping mit JPA Getting Started Jonas Bandi Simon Martinelli.
Java 2 Enterprise Edition (J2EE)
Java 2 Enterprise Edition (J2EE)
Stephan Bury  Pascal Busch  Bita Gerami
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Internet-Datenbanken Grundlagen des WWW HTML HTTP Web-Anbindung von Datenbanken Servlets JSP JDBC XML Datenmodell Schemabeschreibungssprachen Anfragesprachen.
Java: Dynamische Datentypen
FH-Hof SQLJ Richard Göbel. FH-Hof SQLJ - Idee Erweiterung von Java um SQL Die Verwendung von SQL-Anweisungen innerhalb einer Programmiersprache wird vereinfacht.
Open Database Connectivity (ODBC). © Prof. T. Kudraß, HTWK Leipzig Open Database Connectivity (ODBC) Idee: – API für eine DBMS, das ein Call-Level-Interface.
JDBC Konzepte Realisierung von Zugriffen
Business Logik als EJB-Applikation Gruppe pea19 Raed IssaChristian KubanekHonoré Tiako.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Transaction Script Software Component Technology for Distributed Applications.
Java2 Enterprise Edition René Noack Mai 2003
JDBC -Java Database Connectivity-. 15./22. April 2004JDBC2 JDBC.... verbindet Java-Programme mit SQL-basierten Datenbanken.. liefert eine generische SQL-API.
JDBC EDV JDBC.
RelationentheorieObjektorientierte Datenbanken AIFB SS Das ODMG-Objektmodell vs. relationales Modell (1/9) ODMG-Objektmodell Literal_type Atomic_literal.
Prof. K. Gremminger Folie 1 Vorlesung Datenbanksysteme SS 2002 Aufbau einer Verbindung zur Datenbank import java.net.URL; import java.sql.*; class JDBCExample.
Implementierung und Managment unternehmenskritischer Anwendungen insbesondere Performance und Skalierbarkeit EJB basierter Anwendungen WebLogic, das Herz.
Hänchen & Partner GmbH 1 Web-Anwendungen mit dem Jakarta Struts Framework 3.Juli 2003 Martin Burkhardt.
Verteilte Transaktionen mit EJBs und JDBC 2.0
M A P K I T Management eines J2EE basierten eCommerce Systems am Beispiel des ATG Dynamo Applikationsservers und BMC Patrol als Managementframework.
JDBC: JAVA Database Connectivity
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Working With Persistent Objects
1 Sg 3 – JSP - Java Server Pages Softwareengineering Praktikum Java Server Pages Nicole Brandstätter Josef Sturm Karl Streicher.
Robotron – Titel der Präsentation Martin Kunze,
Software Architektur II
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
EJB-Applikationsserver
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Getting Started Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
Servlets Servlets und relevantes API Servlets & SQL via JDBC Implementierungs - Spezifika Architektur Überblick Vertikaler Prototyp / Spezifikation.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
HORIZONT 1 XINFO ® Das IT - Informationssystem Eclipse Plugin HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
JDBC (Java DataBase Connectivity)
Java Server Pages Sergej Keterling
FIN-IVS Dr.Fritz Zbrog Verteilte Systementwicklung EJB Tutorial Was wird für EJB-Entwicklung benötigt ? J2EESDK 1.4 (software developement kit)
Esprit Database Suite Eine leistungsfähige Java-Persistzenzschicht zur einfachen Programmierung von Datenbankapplikation.
Referent: Stephan Metzler
Komponentenarchitekturen, Enterprise Java Beans (EJB)
Datenanbindung in Webapplikationen
Datenbankanbindung mit
Persistenz: Objekt-Lebensdauer In RDBMS wird Lebensdauer von Werten durch ihren Typ festgelegt: Instanzen von Relationstypen sind persistent, alle anderen.
© abaXX Java als Plattform für die Abbildung von B2B Geschäftsprozessen Di 7 :
WS2006/2007 Vorlesung: Datenbanken und Internet Copyright 2006 – DBIS/Dr. Karsten Tolle Klausur-Termin? 120 Minuten Bearbeitungszeit Mögliche Termine (unter.
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
JDBC1 Motivation(I) JDBC keine Abkürzung, sondern geschützter Name (inoffiziell: für Java Database Connectivity) unterschiedliche DBS haben unterschiedliche.
JDBC – Datenzugriff aus Java
EJB Architektur für große Web - Applikationen Gerald Weber
Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.
© 2012 TravelTainment Einführung in Enterprise JavaBeans Seminarvortrag von Ralf Penners Folie 1 von 34.
Verteilte Anwendungen: J2EE
 Präsentation transkript:

J2EE Conformance von JDBC Middleware und EJB Applikation Server Detlef KünzelSystemberater +49 (0)

Agenda n Java 2 Enterprise Edition n JDBC 2.0 Einführung n Datenbankintegration mit JDBC 2.0 n Enterprise Java Beans in Zusammenhang mit JDBC 2.0

Java 2, Enterprise Edition n Applikationsmodel l Beschreibt, wie man eine J2EE Applikation entwickelt n Plattform Spezifikationen l Definiert J2EE Anforderungen n Kompatibilitäts Testtool l Überprüfung ob konform mit J2EE Plattform n Referenz Implementierung l Zusammenarbeit mit J2EE Plattform

J2EE Architektur

Java 2 Plattform und JDBC n Java 2 Standard Edition l JDBC 2.0 core Spezifikation n Java 2 Enterprise Edition l Enterprise Java Beans 1.1 l JDBC 2.0 Optional Package l Java Servlets l Java Server Pages l Zertifizierung Verfahren mit J2EE Reference Implementierung

JDBC 2.0 Einführung Neue Features java.sql JDBC Core ( java.sql ) l Scrollable-Cursors Unterstützung l Neue Datentypen l Batch Updates javax.sql JDBC Optional Package ( javax.sql ) l Java Naming and Directory Interface (JNDI) l Connection Pooling l Verteilte Transaktionen l RowSets

Scrollable Result Sets Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL ResultSet srs = stmt.executeQuery("SELECT COF_NAME, PRICE srs.afterLast(); while (srs.previous()) { String name = srs.getString("COF_NAME"); float price = srs.getFloat("PRICE"); System.out.println(name + " " + price); } srs.absolute(4); srs.relative(-2);...

JNDI Architecture

Connection Pooling: Object Diagram Standard JDBC ConnectionInterfaces

Was sind Verteilte Transaktionen ? n Transaktionen auf mehrere, auch heterogenen Datenbanken n Alle beteiligte Datenbanken sind immer in einem konsistenten Zustand n Früher immer von einem Transaktions-Monitor gesteuert n Unabdingbar für unternehmens- kritische Applikationen n XA, 2 Phase-Commit, Long Transaction sind (fast) Synonyme EJB Server DBMS 1 Java Virtual Machine Java Applet DBMS 2 RM I 2PC

XA Transactions Object Diagram Standard JDBC ConnectionInterfaces

JDBC 2.0: Distributed XA Transactions n Wenige Code-Änderungen: l Kein Connection.commit() l Kein Connection.rollback() l Kein Connection.setAutoCommit() n Stattdessen in dem DataSource object verwaltet n JDBC Treiber muß folgende JDBC XA Interfaces implementieren: l javax.sql.XADataSource l javax.sql.XAConnection n In SequeLink Java Edition seit Dezember 1999

Welche Applikationserver unterstützen verteilte Transaktionen? n IBM - Websphere ab Version 3.5 n IONA - I-Portal Applicationserver n Gemstone - Gemstone/J n bei anderen klären ob XADataSource- Interface unterstützt wird

DataDirect SequeLink Java Edition n Ein universeller JDBC-Treiber für alle Datenbanken, dadurch maximale DB- Unabhängigkeit n Kombiniert Performance von Typ 4-Lösung mit Flexibilität von Typ 3 n Einsetzbar in beliebigen Java-Konfigurationen, da 100% Pure Java zertifiziert n Beste Möglichkeit für Java/OS 390 n Verwendet von Javasoft im Rahmen der J2EE Zertifizierungsverfahren

Enterprise Java Bean SessionBeans modellieren Prozesse und Abläufe Zugriff auf Datenbanken z.B. Abfrage des Kontostandes Einem Client zugeordnet anonym Transiente Objekte kurzlebig, für eine Sitzung überleben Systemabsturz nicht EntityBeans Repräsentieren Geschäftsabläufe verknüpft mit Datenbanken z.B. Daten eines Bankkontos Von mehreren Clients nutzbar besitzt Identität Persistente Objekte langlebig überleben Systemabstürze

Transaktionssteuerung durch JavaBeans n Explizit (SessionBeans) l ist nicht J2EE konform wird aus Performensgründen jedoch häufig angewendet n Implizit (EntityBeans) l Bean managed u Zustandssicherung durch Bean u Bean-Provider codiert DB-Aufruf (als Teil der Bean-Business-Logic) l Container managed u Zustandssicherung durch Container u Container generiert DB-Aufrufe (Deployment Deskriptor spezifiziert zu sicheren Bean-Attributen)

Transaction Attribute Summary für implizite Steuerung

Beans und Transaktionen Beispiel Session Bean: SB_KundenPflege Methoden: Anlegen() Aendern() Suche() Entity Bean: EB_Kunde Methoden: ejbStore() ejbLoad() Deployment Descriptor: SB_KundenPflege: TX_SUPPORTS Deployment Descriptor: EB_Kunde: TX_MANDATORY

Beispiel Code (in EJB) // Create multi-component, multi-distributor order // in Bean-Demarcated Session Bean Context ctx = new InitialContext(); ds1 = (DataSource) ctx.lookup("jdbc/ inventoryDB1"); ds2 = (DataSource) ctx.lookup("jdbc/ inventoryDB2"); ut = ctx. getUserTransaction(); ut. begin(); con1 = ds1.getConnection( user1, password1); con2 = ds2.getConnection( user2, password2);

Beispiel Code (2) stmt1 = con1. createStatement(); stmt2 = con2. createStatement();... Transaktion hier... // if order can be completely filled, create the order, otherwise // rollback if (flag) ut. commit(); else ut. rollback();

Vielen Dank ! Detlef KünzelSystemberater +49 (0)