Java Persistence API (JPA)

Java™ Persistence API (JPA) is a new standard for data persistence in Web and distributed business applications. This standard replaces container-managed persistence (CMP) beans in the Java 2 Platform, Enterprise Edition (J2EE).

Defining and editing object-relational mappings for EJB 3.0 JPA entities

With extensible frameworks and tools, you can perform many tasks that are associated with accessing data for a multi-tier enterprise application:

Top-down and Bottom-up Mappings

With the JPA tools, you can generate JPA entities from existing database tables (bottom-up mapping) or database tables from existing JPA entities (top-down mapping).

Java Messaging Service (JMS) binding support

Java Messaging Service (JMS) bindings can be used as a transport in addition to the Enterprise Information Server (EIS) bindings. You can use J2C properties editor to add and edit JMS bindings from the Service Component Architecture (SCA) component editor.

Creating different types of mappings

With the JPA tools, you can create the following types of mappings for JPA entities:

Simplification of mapping

In order to minimize the complexity of mapping between JPA entities and tables, you can use wizards to create and automate initial mappings. You can also receive programming assistance from the tools through dynamic problem identification.

Ease of Refactoring

When you rename or move a class that is related to JPA, you can use a wizard to refactor all references to these classes in persistence.xml and orm.xml files.

Integration of the JPA Details view and the Annotations view

You can work with JPA properties in either the JPA Details view or the Annotations view, so that you don’t need to keep both views open at once. For clarity, the Annotations view distinguishes between implied and specified annotation attributes.

Adding JPA Support to a plain Java project

By using Quick Fixes, that are available in the Java editor, you can easily add JPA support to a plain Java project. When you type a JPA annotation into a plain old Java object (POJO) in a plain Java project, the resulting compilation errors have Quick Fixes for adding the required JPA facet and an appropriate runtime environment (if available) to your project.