インターフェース SavepointManager

すべての既知のサブインターフェース:
TransactionStatus
すべての既知の実装クラス:
AbstractTransactionStatusDefaultTransactionStatusJdbcTransactionObjectSupportSimpleTransactionStatus

public interface SavepointManager
汎用的にトランザクションセーブポイントをプログラムで管理する API を指定するインターフェース。TransactionStatus によって拡張され、特定のトランザクションのセーブポイント管理機能を公開します。

セーブポイントはアクティブなトランザクション内でのみ機能することに注意してください。高度なニーズにこのプログラムによるセーブポイント処理を使用するだけです。それ以外の場合は、PROPAGATION_NESTED を使用したサブトランザクションが望ましいです。

このインターフェースは JDBC の Savepoint メカニズムからインスピレーションを得ていますが、特定の永続化テクノロジには依存しません。

導入:
1.1
作成者:
Juergen Hoeller
関連事項:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    新しいセーブポイントを作成します。
    void
    指定されたセーブポイントを明示的に解放します。
    void
    指定されたセーブポイントにロールバックします。
  • メソッドの詳細

    • createSavepoint

      ObjectSE createSavepoint() throws TransactionException
      新しいセーブポイントを作成します。rollbackToSavepoint を使用して特定のセーブポイントにロールバックし、releaseSavepoint を使用して不要になったセーブポイントを明示的に解放できます。

      ほとんどのトランザクションマネージャーは、トランザクションの補完時にセーブポイントを自動的に解放することに注意してください。

      戻り値:
      rollbackToSavepoint(java.lang.Object) または releaseSavepoint(java.lang.Object) に渡されるセーブポイントオブジェクト
      例外:
      NestedTransactionNotSupportedException - 基になるトランザクションがセーブポイントをサポートしていない場合
      TransactionException - たとえば、トランザクションが適切な状態にないためにセーブポイントを作成できなかった場合
      関連事項:
    • rollbackToSavepoint

      void rollbackToSavepoint(ObjectSE savepoint) throws TransactionException
      指定されたセーブポイントにロールバックします。

      セーブポイントはその後自動的に解放されませんreleaseSavepoint(Object) を明示的に呼び出すか、トランザクションの補完時に自動解放を使用できます。

      パラメーター:
      savepoint - ロールバックするセーブポイント
      例外:
      NestedTransactionNotSupportedException - 基になるトランザクションがセーブポイントをサポートしていない場合
      TransactionException - ロールバックが失敗した場合
      関連事項:
    • releaseSavepoint

      void releaseSavepoint(ObjectSE savepoint) throws TransactionException
      指定されたセーブポイントを明示的に解放します。

      ほとんどのトランザクションマネージャーは、トランザクションの補完時にセーブポイントを自動的に解放することに注意してください。

      トランザクションの補完時に適切なリソースのクリーンアップが最終的に行われる場合、実装はできるだけ静かに失敗する必要があります。

      パラメーター:
      savepoint - リリースするセーブポイント
      例外:
      NestedTransactionNotSupportedException - 基になるトランザクションがセーブポイントをサポートしていない場合
      TransactionException - リリースが失敗した場合
      関連事項: