public interface

CallbackPreferringPlatformTransactionManager

implements PlatformTransactionManager
org.springframework.transaction.support.CallbackPreferringPlatformTransactionManager
Known Indirect Subclasses

Class Overview

Extension of the PlatformTransactionManager interface, exposing a method for executing a given callback within a transaction.

Implementors of this interface automatically express a preference for callbacks over programmatic getTransaction, commit and rollback calls. Calling code may check whether a given transaction manager implements this interface to choose to prepare a callback instead of explicit transaction demarcation control.

Spring's TransactionTemplate and TransactionInterceptor detect and use this PlatformTransactionManager variant automatically.

Summary

Public Methods
abstract <T> T execute(TransactionDefinition definition, TransactionCallback<T> callback)
Execute the action specified by the given callback object within a transaction.
[Expand]
Inherited Methods
From interface org.springframework.transaction.PlatformTransactionManager

Public Methods

public abstract T execute (TransactionDefinition definition, TransactionCallback<T> callback)

Execute the action specified by the given callback object within a transaction.

Allows for returning a result object created within the transaction, that is, a domain object or a collection of domain objects. A RuntimeException thrown by the callback is treated as a fatal exception that enforces a rollback. Such an exception gets propagated to the caller of the template.

Parameters
definition the definition for the transaction to wrap the callback in
callback the callback object that specifies the transactional action
Returns
  • a result object returned by the callback, or null if none
Throws
TransactionException in case of initialization, rollback, or system errors
RuntimeException if thrown by the TransactionCallback