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
    Modifier and Type | Method and Description
    --- | ---
    `<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