Class EclipseLinkJpaDialect

java.lang.Object
org.springframework.orm.jpa.DefaultJpaDialect
org.springframework.orm.jpa.vendor.EclipseLinkJpaDialect
All Implemented Interfaces:
Serializable, PersistenceExceptionTranslator, JpaDialect

public class EclipseLinkJpaDialect extends DefaultJpaDialect
JpaDialect implementation for Eclipse Persistence Services (EclipseLink). Compatible with EclipseLink 3.0/4.0.

By default, this dialect acquires an early EclipseLink transaction with an early JDBC Connection for non-read-only transactions. This allows for mixing JDBC and JPA operations in the same transaction, with cross visibility of their impact. If this is not needed, set the "lazyDatabaseTransaction" flag to true or consistently declare all affected transactions as read-only. As of Spring 4.1.2, this will reliably avoid early JDBC Connection retrieval and therefore keep EclipseLink in shared cache mode.

NOTE: This dialect supports custom isolation levels with limitations. Consistent isolation level handling is only guaranteed when all Spring transaction definitions specify a concrete isolation level, and as of 6.0.10 also when using the default isolation level with non-readOnly and non-lazy transactions. See the "lazyDatabaseTransaction" javadoc for details.

Since:
2.5.2
Author:
Juergen Hoeller
See Also: