|
|
(8 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | =Object-Persistence Impedance Mismatch=
| + | '''[[Image:Elug_draft_icon.png|Warning]] See "What Is the Object-Persistence Impedance Mismatch?" in the [http://www.eclipse.org/eclipselink/documentation/ EclipseLink Concepts Guide]''' |
− | 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'''''
| + | |
− | | + | |
− | [[Image:mismatch.gif|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 [http://www.eclipse.org/webtools/dali/ Eclipse Dali], [http://www.oracle.com/technology/products/jdev/index.html Oracle JDeveloper], or [http://netbeans.org/ 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_JPA
| + | |
− | |previous=[[EclipseLink/UserGuide/JPA|About EclipseLink]]
| + | |
− | |next=[[EclipseLink/UserGuide/JPA/Basic_JPA_Development|Basic JPA Development]]
| + | |
− | |up=[[EclipseLink/UserGuide/JPA|Introduction]]}}
| + | |