Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Recent Magazine Ad.

Ähnliche Präsentationen


Präsentation zum Thema: "Recent Magazine Ad."—  Präsentation transkript:

1 Recent Magazine Ad

2 Präsentiert von: Bernd Trops Principal Sales Consultant BU ApplicationServer

3 Objekt Relationales Mapping
Schreiben der Objekte in die Relational DB Objekte müssen in flache Strukturen zerlegt werden Die flachen Strukturen werden in Tabellen gespeichert Objekt-Raum (Java) Relationale Welt Das Festhalten der Abbildung von Objekten auf Datenbanktabellen. Die komplexen Objekt müssen in flache Strukturen zerlegt werden, damit sie in Tabellen gespeichert werden können.

4 Integration von Java und Datenbanken
Lesen der Objekte aus der relationalen Datenbank Zusammensuchen der notwendigen Daten Erstellen und Verlinken der Objekte Objekt-Raum (Java) Relationale Welt Objekt Register Objekt Zustand Über JDBC kommt beim lesen der Datenbank nur Rohdaten zurück. TopLink erzeugt aus diesen Rohdaten die in der Applikation benötigten Java-Objekte. Zur Laufzeit stellt TopLink ebenfalls sicher, dass Objekte die bereits geladen sind nicht noch einmal geladen werden müssen. Dies bringt zusätzliche Performance für die Anwendung

5 Wo passt TopLink hinein?
Toplink hat von seiner Architektur schon immer optimal zu den ApplicationServer gepasst, Descriptoren halten die Metadaten ie im EJB-Umfeld. TopLink kann auf alle relationalen Datenbanken zugreifen und über das SDK auch auf nicht relationale Datenquellen (XML, EIS Systeme)

6 Wo passt TopLink hinein? Überall!
TopLink integriert sich in jede Java-Architektur Java Objekte Entity Beans BMP für jeden J2EE kompatiblem Applikationsserver CMP für EJB1.1 und EJB2.0 In alle Java Architekturen JSP Servlet SessionBean Message Driven Beans 2-Tier, 3-Tier, Peer-to-Peer Fat client, thin client JDO ADF TopLInk war schon vor EJB entwickelt worden, es ist 10 Jahre alt und wurde vor 6 Jahren (1996)auf Java portiert. TopLink unterstützt jeden Persistenz-Standard für Java Objekte.

7 Oracle9iAS J2EE TopLink Web Services Integration Business Intelligence
Portals Wireless Es gehört nun zu der Produktfamilie Oracle9iAS. Ist aber weiterhin ein eigenständiges Produkt mit eigenständiger Installations CD.

8 Warum TopLink? Aufgrund von hunderten von erfolgreichen Projekten, an denen tausende von Entwicklern gearbeitet haben, ist TopLink ein sehr robustes Framework, das sich in den verschiedensten Architekturen und Branchen bewährt hat ProSieben TopLink ist der De facto Standard auf dem Gebiet Java-Persistenz. Das beweisen die zahlreichen Kunden aus den verschiedenen Branchen

9 Top Produkt Funktionalitäten
Meta-Daten Architektur Intuitive Visuelle Mapping Workbench Vollständiger Mapping Support Flexible Abfragesprache Caching OO-Transaktionsunterstützung Performance Tuning Optionen SDK J2EE Applikation Server Features

10 Meta-Daten Architektur
Mapping Information werden im Deskriptor und nicht im Objekt gehalten Meta-Daten bedeutet auch: TopLink verändert weder das Objektmodell noch das DB-Schema Employee firstName lastName address birthDate Address city state zip E_ID F_NAME L_NAME A_ID B_DATE TopLink Meta-Data A_ID CITY STATE ZIP Die Meta daten halten alle Informationen bereit die dazu notwendig sind die Java-Objekte aus der Datenbank zusammenzustellen bzw. Sie in die Datenbank zu schreiben. Es wird sozusagen ein Index für die Objekte angelegt in den TopLink hineinschaut um die Objekte zu laden oder zu speichern. TopLink generiert keinen Code in die Business Objekte.

11 TopLink Mapping Workbench – erstellt die Meta-Daten
Mit der TopLink Mapping Workbench erzeugen Sie die Meta-Daten

12 Flexible Mappings

13 Vollständiger Mapping Support und Flexibilität
Direct to Field, One to One, One to Many, Many to Many Es werden alle Foreign-Key Varianten der Datenbank unterstützt, inkl. von Join-Tabellen für M-to-M Mapping Object Type, Transformation Für Aufzählungen (‘Herr’-> ‘H’) oder Konvertierungen (String zu Number) Benutzer definierte Transformationen Aggregates, Multiple tables Es können mehrere Objekte auf ein Tabelle abgebildet werden Ein Objekt kann sich über mehrere Tabellen erstrecken Und vieles mehr – Serialized mappings, Direct Collections, Object-Relational Mappings, etc. TopLink bietet alle nur denklichen mappings an. Es ist nicht bekannt das ein vorhandenes Objekt-Modell nicht auf eine Datenbank abgebildet werden konnte.

14 Objekt Abfragen mit Java Beispiel - Expressions
Finde alle Kunden die ein Produkt “Schraube-M5” bestellt haben Syntax für Java Entwickler, einfache Objekt Attribute Abfrage: custExpression.anyOf(“orders”).anyOf(“orderItems”).get(“product”).get("productName").equal(“SchraubeM5”) Equivalentes SQL-Statement: SELECT t3.ID, t3.FIRST_NAME, t3.LAST_NAME, t3.STREET, t3.CITY, t3.STATE, t3.ZIP FROM CUSTOMER t3, ORDER t2, ORDER_ITEMS t1, PRODUCT t0 WHERE ((t0.PRODUCT_NAME = ‚SchraubeM5') AND ((t2.CUST_ID = t3.ID) AND ((t1.ORDER_ID = t2.ID) AND (t0.ID = t1.PRODUCT_ID)))) Developers not forced to know SQL, developer can leverage their Java skills Isolates database details from the application layers, leading to easier to maintain apps Support for functions and database specific function SQL syntax. Users have the ability to add new functions. Advanced SQL support including Outer-join support and nested sub-selects Queries can be run “in memory” against cache Product Customer OrderItem Order orderDate cost orderItems productName cost weight 1 firstName lastName orders quantity discount product 1 1 * * 1

15 TopLink MW – Query Editor

16 Object Queries mit EJBQL
Für EJBQL spricht Syntax ist an SQL angelehnt Abfragen referenzieren Objekt-Attribute keine Datenbank-Spalten Gegen EJBQL spricht Nur definiert für CMP Es sind nur statische Abfragen möglich Noch sehr jung und noch nicht ausgereift TopLink Value Add EJBQL auch für Java Objects, CMP und BMP In memory EJBQL Mapping Workbench unterstützt EJBQL EJBQL is part of EJB 2.0 spec. We add value as noted in the slide above beyond the spec. You can manage all your EJBQL code in the MW. Why would anyone want to use EJBQL? Just because it’s a standard and theoretically portable – that’s why. But here is the irony: the spec is very limiting, you can only do basic queries. To deal with the problem, WebLogic has a lot of EJBQL extensions that they’ve added. This means that anyone who uses this “standard” in WebLogic is probably using the extensions, and therefore is no longer writing “standard” queries. That means they’re not portable, so why bother? We would encourage our customers to use the TopLink query framework as it’s way more advanced than either of the standards but you know how bad it looks to slog standards, so there is a fine line to walk. Bottom line: - We support EJBQL, not only for EJB but for other architectures and have tools to support EJBQL - If you want to do advanced queries, we have a query framework for that

17 Standard Cache Verhalten
1. OO Abfrage Query Framework 2. SQL Query 3. Ergebnis(se) 5. Nein – erzeuge Objekt 4. Gibt es das Objekt mit dem PK? Cache The question “If I have to go to the DB to execute a query, what value is the cache” can be answered with: - It saves objects from constantly being built and rebuilt – very slow in Java - Keeps memory footprint and GC low as objects are shared by multiple readers - Queries CAN be run in memory where appropriate – highly dependent on dataflow and application parameters TopLink caches the Java objects as they are read/written Performance is boosted because frequently accessed data does not have to be constantly built and rebuilt Memory footprint and garbage collection kept low as multiple readers share objects Very flexible caching options to ensure you get maximum performance 6. Return Objekt 5. JA– es wird aus dem Cache genommen

18 Performance und Tuning Optionen
Minimal Writes, Updates Batch Reading, Writing SQL ordering Transformation support Existence checks Stored procedures Read Lock Support Statement Caching Scrolling cursors Partial Attribute Queries Indirection for “Just in Time” reading Automatic change detection Caching policies and sizes Parameterized SQL Pre-allocation of sequence numbers Cache synchronization support Optimistic, Pessimistic locking Joining object retrieval optimization In memory querying Dynamic queries Query optimization

19 TopLink für nicht-Relational Daten Quellen
Erlaubt den Zugriff auf nicht relationale Daten Quelle wie: EIS/Mainframe and XML Bietet die gesamt Funktionalität, die TopLink für relationale Datenbanken bietet: Caching, Just in time reading, Transaktions-Integration, etc. Eine Beispielimplementierung für XML ist in der Produktlieferung enthalten Das TopLink SDK erlaubt es den Entwicklern auf nicht relationale Datenquellen zuzugreifen. Wie so etwas mit TopLink SDK implemtiert werden kann ist am Beispiel XML realisiert worden. Die notwendigen Erweiterungen liegen im Sourcecode vor und es sind auch Anwendungsbeispiele vorhanden

20 TopLink und EJB-2.0 CMP Corba RMI JDO TopLink
J2EE Message Driven Session Entity Beans Beans Beans Bean Managed Container Managed Persistance Persistance Corba RMI JDO TopLink = EJB-Container support = TopLink Support für Persistenz

21 TopLink und EJB Spezifikation
TopLink Vorteile gegenüber J2EE Applikation Server Mapping Tools Stored Procedure support Mapping Flexibility Bean-Object relationship support Bean/Object generation tools Enhanced Caching options Transformation support Schema generation tools Advanced expression support In memory querying Batch reading Batch writing Statement caching Reporting framework Just in time reading flexibility

22 TopLink und EJB Spezifikation
TopLink Vorteile gegenüber J2EE Applikation Server Minimal writes SQL ordering Event framework Sequencing flexibility Optimistic locking Pessimistic locking No locking Performance profiler GUI Logging support Interface support BMP support Java Object support Cache synchronization support Partial reads Dynamic queries 2-tier support Inheritance support Open API to support almost any data source

23 ADF Struktur Business Services Java Classes EJB Session Beans
Web Services ADF Business Components Application Module JDBC EJB Finders TopLink Queries ADF Business Components View Object Data Access ADF Business Components Entity Object EJB Entity Beans TopLink Mapping Persistent Business Objects ADF Business Components Service Object ADF Business Components Query Object ADF Business Components Entity Object Business Services

24 TopLink – Summary Reduziert Entwicklungs- und Wartungskosten
– die Persistenzschicht ist kein Risikofaktor mehr Aufteilung in Java und Datenbank-Funktionalitäten TopLink ist wiederverwendbar über Applikationsgrenzen hinaus Portabilität Datenbank, ApplikationServer, DB-Schema Ein Jahrzehnt Persistenz Kompetenz Performance, Produktivität, Flexibilität Industriestandard für Java und Datenbank Integration

25 THE END


Herunterladen ppt "Recent Magazine Ad."

Ähnliche Präsentationen


Google-Anzeigen