public class HibernateJpaVendorAdapter extends AbstractJpaVendorAdapter
JpaVendorAdapter implementation for
Hibernate EntityManager. Developed and tested against Hibernate 3.6 and 4.2/4.3.
Exposes Hibernate's persistence provider and EntityManager extension interface,
and supports AbstractJpaVendorAdapter's common configuration settings.
Note that the package location of Hibernate's JPA support changed from 4.2 to 4.3:
from org.hibernate.ejb.HibernateEntityManager(Factory) to
org.hibernate.jpa.HibernateEntityManager(Factory). As of Spring 4.0,
we're exposing the correct, non-deprecated variant depending on the Hibernate
version encountered at runtime, in order to avoid deprecation log entries.
| Constructor and Description |
|---|
HibernateJpaVendorAdapter() |
| Modifier and Type | Method and Description |
|---|---|
protected Class<?> |
determineDatabaseDialectClass(Database database)
Determine the Hibernate database dialect class for the given target database.
|
Class<? extends EntityManagerFactory> |
getEntityManagerFactoryInterface()
Return the vendor-specific EntityManagerFactory interface
that the EntityManagerFactory proxy is supposed to implement.
|
Class<? extends EntityManager> |
getEntityManagerInterface()
Return the vendor-specific EntityManager interface
that this provider's EntityManagers will implement.
|
JpaDialect |
getJpaDialect()
Return the vendor-specific JpaDialect implementation for this
provider, or
null if there is none. |
Map<String,Object> |
getJpaPropertyMap()
Return a Map of vendor-specific JPA properties,
typically based on settings in this JpaVendorAdapter instance.
|
PersistenceProvider |
getPersistenceProvider()
Return the vendor-specific persistence provider.
|
String |
getPersistenceProviderRootPackage()
Return the name of the persistence provider's root package
(e.g.
|
getDatabase, getDatabasePlatform, isGenerateDdl, isShowSql, postProcessEntityManagerFactory, setDatabase, setDatabasePlatform, setGenerateDdl, setShowSqlpublic PersistenceProvider getPersistenceProvider()
JpaVendorAdapterpublic String getPersistenceProviderRootPackage()
JpaVendorAdaptergetPersistenceProviderRootPackage in interface JpaVendorAdaptergetPersistenceProviderRootPackage in class AbstractJpaVendorAdapterpublic Map<String,Object> getJpaPropertyMap()
JpaVendorAdapterNote that there might be further JPA properties defined on the EntityManagerFactory bean, which might potentially override individual JPA property values specified here.
getJpaPropertyMap in interface JpaVendorAdaptergetJpaPropertyMap in class AbstractJpaVendorAdapternull or an empty Map
if there are no such properties to exposePersistence.createEntityManagerFactory(String, java.util.Map),
PersistenceProvider.createContainerEntityManagerFactory(javax.persistence.spi.PersistenceUnitInfo, java.util.Map)protected Class<?> determineDatabaseDialectClass(Database database)
database - the target databasenull if none foundpublic JpaDialect getJpaDialect()
JpaVendorAdapternull if there is none.getJpaDialect in interface JpaVendorAdaptergetJpaDialect in class AbstractJpaVendorAdapterpublic Class<? extends EntityManagerFactory> getEntityManagerFactoryInterface()
JpaVendorAdapterIf the provider does not offer any EntityManagerFactory extensions,
the adapter should simply return the standard
EntityManagerFactory class here.
getEntityManagerFactoryInterface in interface JpaVendorAdaptergetEntityManagerFactoryInterface in class AbstractJpaVendorAdapterpublic Class<? extends EntityManager> getEntityManagerInterface()
JpaVendorAdapterIf the provider does not offer any EntityManager extensions,
the adapter should simply return the standard
EntityManager class here.
getEntityManagerInterface in interface JpaVendorAdaptergetEntityManagerInterface in class AbstractJpaVendorAdapter