open class DefaultJpaDialect : JpaDialect, Serializable
Default implementation of the JpaDialect interface. Used as default dialect by JpaTransactionManager. Simply begins a standard JPA transaction in NOTE: Spring's JPA support requires JPA 2.1 or higher, as of Spring 5.0. |
|
abstract class EntityManagerFactoryAccessor : BeanFactoryAware
Base class for any class that needs to access a JPA EntityManagerFactory, usually in order to obtain a JPA EntityManager. Defines common properties. |
|
open class EntityManagerHolder : ResourceHolderSupport
Holder wrapping a JPA EntityManager. JpaTransactionManager binds instances of this class to the thread, for a given EntityManagerFactory. Note: This is an SPI class, not intended to be used by applications. |
|
interface EntityManagerProxy : EntityManager
Subinterface of javax.persistence.EntityManager to be implemented by EntityManager proxies. Allows access to the underlying target EntityManager. This interface is mainly intended for framework usage. Application code should prefer the use of the |
|
abstract class ExtendedEntityManagerCreator
Delegate for creating a variety of javax.persistence.EntityManager proxies that follow the JPA spec's semantics for "extended" EntityManagers. Supports several different variants of "extended" EntityManagers: in particular, an "application-managed extended EntityManager", as defined by The original difference between "application-managed" and "container-managed" was the need for explicit joining of an externally managed transaction through the |
|
interface JpaDialect : PersistenceExceptionTranslator
SPI strategy that encapsulates certain functionality that standard JPA 2.1 does not offer, such as access to the underlying JDBC Connection. This strategy is mainly intended for standalone usage of a JPA provider; most of its functionality is not relevant when running with JTA transactions. In general, it is recommended to derive from DefaultJpaDialect instead of implementing this interface directly. This allows for inheriting common behavior (present and future) from DefaultJpaDialect, only overriding specific hooks to plug in concrete vendor-specific behavior. |
|
open class LocalEntityManagerFactoryBean : AbstractEntityManagerFactoryBean
org.springframework.beans.factory.FactoryBean that creates a JPA javax.persistence.EntityManagerFactory according to JPA's standard standalone bootstrap contract. This is the simplest way to set up a shared JPA EntityManagerFactory in a Spring application context; the EntityManagerFactory can then be passed to JPA-based DAOs via dependency injection. Note that switching to a JNDI lookup or to a LocalContainerEntityManagerFactoryBean definition is just a matter of configuration! Configuration settings are usually read from a This EntityManagerFactory bootstrap is appropriate for standalone applications which solely use JPA for data access. If you want to set up your persistence provider for an external DataSource and/or for global transactions which span multiple resources, you will need to either deploy it into a full Java EE application server and access the deployed EntityManagerFactory via JNDI, or use Spring's LocalContainerEntityManagerFactoryBean with appropriate configuration for local setup according to JPA's container contract. Note: This FactoryBean has limited configuration power in terms of what configuration it is able to pass to the JPA provider. If you need more flexible configuration, for example passing a Spring-managed JDBC DataSource to the JPA provider, consider using Spring's more powerful LocalContainerEntityManagerFactoryBean instead. NOTE: Spring's JPA support requires JPA 2.1 or higher, as of Spring 5.0. JPA 1.0/2.0 based applications are still supported; however, a JPA 2.1 compliant persistence provider is needed at runtime. |
|
abstract class SharedEntityManagerCreator
Delegate for creating a shareable JPA javax.persistence.EntityManager reference for a given javax.persistence.EntityManagerFactory. A shared EntityManager will behave just like an EntityManager fetched from an application server's JNDI environment, as defined by the JPA specification. It will delegate all calls to the current transactional EntityManager, if any; otherwise it will fall back to a newly created EntityManager per operation. For a behavioral definition of such a shared transactional EntityManager, see |
open class JpaObjectRetrievalFailureException : ObjectRetrievalFailureException
JPA-specific subclass of ObjectRetrievalFailureException. Converts JPA's EntityNotFoundException. |
|
open class JpaOptimisticLockingFailureException : ObjectOptimisticLockingFailureException
JPA-specific subclass of ObjectOptimisticLockingFailureException. Converts JPA's OptimisticLockException. |
|
open class JpaSystemException : UncategorizedDataAccessException
JPA-specific subclass of UncategorizedDataAccessException, for JPA system errors that do not match any concrete |