org.springframework.transaction.support

## Interface TransactionOperations

All Known Implementing Classes:
  TransactionTemplate

    public interface TransactionOperations

Interface specifying basic transaction execution operations. Implemented by `TransactionTemplate`. Not often used directly, but a useful option to enhance testability, as it can easily be mocked or stubbed.

Since:
  2.0.4
Author:
  Juergen Hoeller

### Method Summary

Methods
`<T> T` `execute(TransactionCallback<T> action)` Execute the action specified by the given callback object within a transaction.

### Method Detail

#### execute

    <T> T execute(TransactionCallback<T> action)
              throws TransactionException

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:
  `action` - 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