Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Runtime Architecture Data Source.

Similar presentations


Presentation on theme: "Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Runtime Architecture Data Source."— Presentation transcript:

1 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Runtime Architecture Data Source EclipseLink Persistence Manager Cache Query TX Object Data Conversion Presentation Interface (JSP,Servlet,Struts,Web Service, Custom) Application Logic (EJB Session Beans, Java Classes) JavaEE Server Business Entities (EJB Entity Beans, Java Classes) JDBC XDB JDBC EIS JCA Mappings O-R Container Services JTA CMP/ BMP Connection Pools JAXB File, Document O-X

2 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Caching Architecture EntityManager Session EntityManager Factory Server UnitOfWork TX Cache Isolated Cache Shared Cache Cache Coordination JMS (MDB) RMI CORBA IIOP

3 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Domain Model XML DataLegacy Systems Databases Java SE Java EE OSGi SpringADF Meta Data Application Interface Persistence Manager Data Source Accessor and Platform @ Annotations Java API MappingMetadata

4 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Oracle Toplink Oracle TopLink Roadmap 9.0.410.1.311gFuture Original API & Metadata: oracle.toplink.* ORM/OXM, JAXB, EISORM EclipseLink JPA, MOXy, SDO, DBWS, EIS (org.eclipse.persistence.*) TopLink Essentials JPA (oracle.toplink.essentials.*) 10.1.3.1

5 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Roadmap 1.0 1.11.2 2.0 Oracle TopLink 2.1 11g11gR1 EclipseLink 1.0.1 1.0.2 1.1.1 Eclipse Galileo (1.1.2) Eclipse Helios (2.1) GlassFish v3 JavaEE 6 (2.0)

6 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Eclipse Persistence Services EclipseLink Eclipse Persistence Services Project (EclipseLink) DBWS SDO EIS MOXy JPA JPA XML DataLegacy Systems Databases Java SE Java EE OSGi SpringADF

7 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink: Distributions Eclipse.org www.eclipse.org/eclipselink/downloads http://download.eclipse.org/rt/eclipselink/updates Oracle TopLink 11g WebLogic Server 10.3.1 GlassFish v3 Replaces TopLink Essentials JPA 2.0 Reference Implementation Spring Source Spring Framework Spring OSGi Bundle Repository

8 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Developer Tool Support EclipseLink is a Runtime Project but supported by IDEs Eclipse IDE EclipseLink support included by Dali in Eclipse 3.4 (Ganymede) EclipseLink included in Eclipse 3.5 (Galileo) – JavaEE Enhanced Dali support for use of EclipseLink Oracle Enterprise Pack for Eclipse (OEPE) MyEclipse JDeveloper 11g JPA, Native ORM, OXM, and EIS mapping NetBeans Standalone Workbench Native ORM, OXM, EIS

9 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Metadata Usage APIMetadataTooling JPA JPA 1.0 EntityManager(Factory) Query Persistence.xml @Annotations orm.xml eclipselink-orm.xml JDeveloper Eclipse IDE Native ORM Session UnitOfWork Query sessions.xml Map (deployment) XML API Workbench JAXB JAXB 2 Marshaller/UnMarshaller JAXBContext @Annotations jaxb.properties JDeveloper tljaxb (XJC/JXC) Workbench Native OXM JAXB 2 or Native Session sessions.xml Map (deployment) XML jaxb.properties API JDeveloper Workbench SDO SDO 2.1 DataFactory, Type, Property XSD or APIsdo-compiler

10 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Java Persistence Customer id: int name: String creditRating: int CUST IDNAMEC_RATING … … Relational XML Java JPA JPA SDO MOXy DBWS

11 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Where does EclipseLink JPA fit? Relational Database Java SE/EE/OSGi JPA Persistence Provider Design TimeRuntime Mapping Metadata Java Classes Database Schema

12 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Cache Coordination L2 Cache Coordination Messaging JMS, RMI, IIOP, CORBA Type specific configuration Modes: Invalidate, Sync, Sync+New, None @Entity @Cache( coordinationType = INVALIDATE_CHANGED_OBJECTS) Application EntityManager EntityManagerFactory L2 Cache Cache Coordination L1 Cache …

13 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EntityManagerFactory L2 and L1 Caching Client-2 EntityManager -2 L1 Cache EntityManager -1 Client-1 L2 CacheRead PoolWrite Pool Write Read Write

14 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported MOXy Binding Layer elements/ attributes Objects EclipseLink OXM Objects document unmarshalling produces objects results are returned as raw xml XPath is used to specify mapping object creation and updates through object-level API XPath query Java App

15 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported SDO RuntimeStatic SDO SDO runtime combines: Java SDO Classes XML Schema XML Document Java SE/EE SDO Implementation (EclipseLink MOXy) Java SDO Classes XML Schema

16 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported SDO RuntimeDynamic SDO SDO runtime using: XML Schema XML Document Java SE/EE SDO Implementation (EclipseLink MOXy) XML Schema

17 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Application Database SQL Rows Objects Query EclipseLink JDBCJDBC EclipseLink Query Execution Object Builder Mappings Query Framework SQL Stored Procedure Cache Cache Hit?Cache Result? JP QL Expressions Query By Example

18 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Caching EntityManagerEntityManager Factory Client SessionUnitOfWork Server Session RDBMS Shared Cache TX CacheIsolated Cache

19 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Client-Server Session Client (1) reading Client (2) reading Client Session (1)Client Session (2) Server Session Shared Cache Server Application

20 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Client Write Access Client (1) reading Client (2) editing Client Session (1)Client Session (2) Server Session Shared Cache Server Application Unit of Work Cache

21 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Native Meta Model Project (Map)Session ClassDescriptor Class javaClass Mapping attributeName DatabasePlatform * * ServerPlatform Policies Instantiation Clone/Copy Inheritance Locking Sequencing …

22 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Default Cache Behavior Query Framework 1. OO Query 2. SQL Query 3. Results 4. Does PK for row exist in cache? 5. YES: Get from cache 5. NO: Build bean/object from results 6. Return object results Cache

23 Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported Identity Map Person1 Person2 PersonN Identity map for person Identity map for address Identity map is indexed by primary key Session 1 2 N


Download ppt "Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Runtime Architecture Data Source."

Similar presentations


Ads by Google