Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/UserGuide/JPA/Introduction/Object-Persistence Impedance Mismatch

< EclipseLink‎ | UserGuide‎ | JPA‎ | Introduction
Revision as of 12:35, 16 June 2010 by Rick.sapir.oracle.com (Talk | contribs) (Object-Persistence Impedance Mismatch)

Object-Persistence Impedance Mismatch

Java-to-data source integration is a widely underestimated problem when creating enterprise Java applications. This complex problem involves more than simply reading from and writing to a data source. The data source elements include tables, rows, columns, and primary and foreign keys. The Java and Java EE include entity classes, business rules, complex relationships, and inheritance. In a nonrelational data source, you must match your Java entities with EIS records or XML elements and schemas. These differences (as shown in the following figure) are known as the object-persistence impedance mismatch.

Solving Object-Persistence Impedance Mismatch

Solving Object-Persistence Impedance Mismatch

Successful solution requires bridging these different technologies, and solving the object-persistence impedance mismatch–a challenging and resource-intensive problem. To solve this problem, you must resolve the following issues between Java EE and data source elements:

  • Fundamentally different technologies.
  • Different skill sets.
  • Different staff and ownership for each of the technologies.
  • Different modeling and design principles.

As an application developer, you need a product that lets integrate Java applications with any data source, without compromising ideal application design or data integrity. In addition, as a Java developer, you need the ability to store (that is, persist) and retrieve business domain objects using a relational database or a nonrelational data source as a repository.


EclipseLink Solution

EclipseLink addresses the disparity between Java objects and data sources. EclipseLink is a persistence framework that manages relational, object-relational data type, EIS, and XML mappings in a seamless manner. This lets you rapidly build applications that combine the best aspects of object technology and the specific data source. EclipseLink lets you do the following:

  • Persist Java objects to virtually any relational database supported by a JDBC-compliant driver.
  • Persist Java objects to virtually any nonrelational data source supported by a Java EE Connector architecture (JCA) adapter using indexed, mapped, or XML enterprise information system (EIS) records.
  • Perform in-memory conversions between Java objects and XML Schema (XSD) based XML documents using JAXB.
  • Map any object model to any relational or nonrelational schema, using EclipseLink and JPA integration with several tools including Eclipse Dali, Oracle JDeveloper, or NetBeans. The Workbench, a graphical mapping tool is also provided for backward compatibility for projects using the EclipseLink native API.
  • Use EclipseLink successfully, even if you are unfamiliar with SQL or JDBC, because EclipseLink offers a clear, object-oriented view of data sources.


Eclipselink-logo.gif
Version: DRAFT
Other versions...

Back to the top