Class EclipseLinkJpaVendorAdapter

java.lang.Object
org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter
All Implemented Interfaces:
JpaVendorAdapter

public class EclipseLinkJpaVendorAdapter extends AbstractJpaVendorAdapter
JpaVendorAdapter implementation for Eclipse Persistence Services (EclipseLink). Compatible with EclipseLink 3.0/4.0.

Exposes EclipseLink's persistence provider and EntityManager extension interface, and adapts AbstractJpaVendorAdapter's common configuration settings. No support for the detection of annotated packages (through SmartPersistenceUnitInfo.getManagedPackages()) since EclipseLink doesn't use package-level metadata.

Since:
2.5.2
Author:
Juergen Hoeller, Thomas Risberg
See Also:
  • Constructor Details

    • EclipseLinkJpaVendorAdapter

      public EclipseLinkJpaVendorAdapter()
  • Method Details

    • getPersistenceProvider

      public jakarta.persistence.spi.PersistenceProvider getPersistenceProvider()
      Description copied from interface: JpaVendorAdapter
      Return the vendor-specific persistence provider.
    • getJpaPropertyMap

      public Map<String,Object> getJpaPropertyMap()
      Description copied from interface: JpaVendorAdapter
      Return a Map of vendor-specific JPA properties, typically based on settings in this JpaVendorAdapter instance.

      Note that there might be further JPA properties defined on the EntityManagerFactory bean, which might potentially override individual JPA property values specified here.

      Specified by:
      getJpaPropertyMap in interface JpaVendorAdapter
      Overrides:
      getJpaPropertyMap in class AbstractJpaVendorAdapter
      Returns:
      a Map of JPA properties, as accepted by the standard JPA bootstrap facilities, or an empty Map if there are no properties to expose
      See Also:
      • Persistence.createEntityManagerFactory(String, Map)
    • determineTargetDatabaseName

      protected @Nullable String determineTargetDatabaseName(Database database)
      Determine the EclipseLink target database name for the given database.
      Parameters:
      database - the specified database
      Returns:
      the EclipseLink target database name, or null if none found
    • getJpaDialect

      public EclipseLinkJpaDialect getJpaDialect()
      Description copied from interface: JpaVendorAdapter
      Return the vendor-specific JpaDialect implementation for this provider, or null if there is none.
      Specified by:
      getJpaDialect in interface JpaVendorAdapter
      Overrides:
      getJpaDialect in class AbstractJpaVendorAdapter
    • getEntityManagerInterface

      public Class<? extends jakarta.persistence.EntityManager> getEntityManagerInterface()
      Description copied from interface: JpaVendorAdapter
      Return the vendor-specific EntityManager interface that this provider's EntityManagers will implement.

      If the provider does not offer any EntityManager extensions, the adapter should simply return the standard EntityManager class here.

      Specified by:
      getEntityManagerInterface in interface JpaVendorAdapter
      Overrides:
      getEntityManagerInterface in class AbstractJpaVendorAdapter