+

Search Tips   |   Advanced Search

Task overview: Storing and retrieving persistent data with the JPA API

The Java Persistence API (JPA) for the application server defines the management of persistence and object and relational mapping within Java Enterprise Edition (Java EE) and Java Standard Edition (Java SE) environments.

JPA represents a simplification of the persistence programming model. JPA functions within the Java EE specification for Enterprise JavaBeans (EJB) 3.0 and later requirements, managing persistence and object and relational mapping. The JPA specification defines the object/relational mapping within its own guidelines instead of relying on vendor-specific mapping implementations. These features make applications that use JPA easier to implement and manage.

JPA combines the best features from previous persistence mechanisms such as JDBC APIs, Object Relational Mapping (ORM) frameworks, and Java Data Objects (JDO). Creating entities under JPA is as simple as Plain Old Java Objects (POJOs). JPA supports the features provided by JDBC without requiring the knowledge of the specific programming models defined by the various JDBC implementations. Like object-relational software and object databases, JPA supports the use of advanced object-oriented concepts such as inheritance. JPA avoids vendor lock-in because it does not rely on a strict specification like JDO and EJB 2.x entities.

The JPA implementation does not mandate that you migrate existing applications. Existing EJB 2.x Container Managed Persistence applications continue to work without changes. JPA might not be ideal for every application, however, for many applications it provides a better alternative to other persistence implementations.

For detailed information about JPA, read the following topics:


What to do next

JPA for WAS can be used on all platforms that are supported for the application server, including iSeries and z/OS . JPA for WebSphere Application Server supports all databases supported for the application server, including DB2 and Oracle. JPA for WebSphere Application Server also functions with databases that are supported by the OpenJPA implementation of JPA

Important: Databases supported by OpenJPA, but not supported by the WAS, have not been tested extensively by IBM , and might contain unknown compatibility issues. For a list of OpenJPA supported databases, refer to the Apache OpenJPA User Guide

For additional information about OpenJPA, see the Apache OpenJPA User Guide. For information about JPA specifications, see the related links. The information resides on both IBM and non-IBM Internet sites, whose sponsors control the technical accuracy of the information. Often, the information is not specific to this product but is useful all or in part for understanding the product. When possible, links are provided to technical papers and Redbooks that supplement the broad coverage of the release documentation with in-depth examinations of particular product areas.


Subtopics


Related concepts

  • Java Persistence API (JPA) architecture
  • JPA for WebSphere Application Server
  • Database generated version ID with JPA


    Related tasks

  • SQL statement batching for JPA applications
  • Mapping persistent properties to XML columns for JPA
  • Configure persistence provider support in the application server
  • Associate persistence providers and data sources
  • Configure OpenJPA caching to improve performance
  • Troubleshooting JPA applications
  • Use JPA access intent
  • Logging applications with JPA
  • Develop JPA 2.x applications for a Java EE environment
  • Develop JPA 2.x applications for a Java SE environment
  • Configure JPA to work in the environment
  • Assembling a JPA application in a Java EE environment
  • Assembling JPA applications for a Java SE environment

  • Data source minimum required settings, by vendor


    Related information:

    Apache OpenJPA User Guide
    JSR 317: Java Persistence 2.0
    Get Started with the Feature Pack for OSGi Applications and JPA 2.0 Redbooks