# Package org.springframework.orm.jpa

Package providing integration of JPA (Java Persistence API) with Spring concepts.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  EntityManagerFactoryInfo | Metadata interface for a Spring-managed JPA `EntityManagerFactory`.
  EntityManagerFactoryPlus | Extension of the standard JPA EntityManagerFactory interface, linking in Spring's EntityManagerFactoryPlusOperations interface which defines additional operations (beyond JPA 1.0) in a vendor-independent fashion.
  EntityManagerFactoryPlusOperations | Interface that defines common operations beyond the standard JPA EntityManagerFactory interface, in a vendor-independent fashion.
  EntityManagerPlus | Extension of the standard JPA EntityManager interface, linking in Spring's EntityManagerPlusOperations interface which defines additional operations (beyond JPA 1.0) in a vendor-independent fashion.
  EntityManagerPlusOperations | Interface that defines common operations beyond the standard JPA EntityManager interface, in a vendor-independent fashion.
  EntityManagerProxy | Subinterface of `EntityManager` to be implemented by EntityManager proxies.
  JpaCallback<T> | Deprecated as of Spring 3.1, in favor of native EntityManager usage (typically obtained through `@PersistenceContext`)
  JpaDialect | SPI strategy that encapsulates certain functionality that standard JPA 1.0 does not offer, such as access to the underlying JDBC Connection.
  JpaOperations | Deprecated as of Spring 3.1, in favor of native EntityManager usage (typically obtained through `@PersistenceContext`).
  JpaVendorAdapter | SPI interface that allows to plug in vendor-specific behavior into Spring's EntityManagerFactory creators.

- Class Summary
  Class | Description
  --- | ---
  AbstractEntityManagerFactoryBean | Abstract `FactoryBean` that creates a local JPA `EntityManagerFactory` instance within a Spring application context.
  DefaultJpaDialect | Default implementation of the `JpaDialect` interface.
  EntityManagerFactoryAccessor | Base class for any class that needs to access an EntityManagerFactory, usually in order to obtain an EntityManager.
  EntityManagerFactoryUtils | Helper class featuring methods for JPA EntityManager handling, allowing for reuse of EntityManager instances within transactions.
  EntityManagerHolder | Holder wrapping a JPA EntityManager.
  ExtendedEntityManagerCreator | Factory for dynamic EntityManager proxies that follow the JPA spec's semantics for "extended" EntityManagers.
  JpaAccessor | Deprecated as of Spring 3.1, in favor of native EntityManager usage (typically obtained through `@PersistenceContext`)
  JpaInterceptor | Deprecated as of Spring 3.1, in favor of native EntityManager usage (typically obtained through `@PersistenceContext`) and AOP-driven exception translation through `PersistenceExceptionTranslationPostProcessor`
  JpaTemplate | Deprecated as of Spring 3.1, in favor of native EntityManager usage (typically obtained through `@PersistenceContext`) Note that this class did not get upgraded to JPA 2.0 and never will.
  JpaTransactionManager | `PlatformTransactionManager` implementation for a single JPA `EntityManagerFactory`.
  LocalContainerEntityManagerFactoryBean | `FactoryBean` that creates a JPA `EntityManagerFactory` according to JPA's standard container bootstrap contract.
  LocalEntityManagerFactoryBean | `FactoryBean` that creates a JPA `EntityManagerFactory` according to JPA's standard standalone bootstrap contract.
  SharedEntityManagerCreator | Factory for a shareable JPA `EntityManager` for a given `EntityManagerFactory`.

- Exception Summary
  Exception | Description
  --- | ---
  JpaObjectRetrievalFailureException | JPA-specific subclass of ObjectRetrievalFailureException.
  JpaOptimisticLockingFailureException | JPA-specific subclass of ObjectOptimisticLockingFailureException.
  JpaSystemException | JPA-specific subclass of UncategorizedDataAccessException, for JPA system errors that do not match any concrete `org.springframework.dao` exceptions.

## Package org.springframework.orm.jpa Description

Package providing integration of JPA (Java Persistence API) with Spring concepts. Contains EntityManagerFactory helper classes, a template plus callback for JPA access, and an implementation of Spring's transaction SPI for local JPA transactions.