インターフェース SavepointManager
- すべての既知のサブインターフェース:
TransactionStatus
- すべての既知の実装クラス:
AbstractTransactionStatus
、DefaultTransactionStatus
、JdbcTransactionObjectSupport
、SimpleTransactionStatus
public interface SavepointManager
汎用的にトランザクションセーブポイントをプログラムで管理する API を指定するインターフェース。TransactionStatus によって拡張され、特定のトランザクションのセーブポイント管理機能を公開します。
セーブポイントはアクティブなトランザクション内でのみ機能することに注意してください。高度なニーズにこのプログラムによるセーブポイント処理を使用するだけです。それ以外の場合は、PROPAGATION_NESTED を使用したサブトランザクションが望ましいです。
このインターフェースは JDBC の Savepoint メカニズムからインスピレーションを得ていますが、特定の永続化テクノロジには依存しません。
- 導入:
- 1.1
- 作成者:
- Juergen Hoeller
- 関連事項:
方法の概要
修飾子と型メソッド説明新しいセーブポイントを作成します。void
releaseSavepoint
(ObjectSE savepoint) 指定されたセーブポイントを明示的に解放します。void
rollbackToSavepoint
(ObjectSE savepoint) 指定されたセーブポイントにロールバックします。
メソッドの詳細
createSavepoint
新しいセーブポイントを作成します。rollbackToSavepoint
を使用して特定のセーブポイントにロールバックし、releaseSavepoint
を使用して不要になったセーブポイントを明示的に解放できます。ほとんどのトランザクションマネージャーは、トランザクションの完了時にセーブポイントを自動的に解放することに注意してください。
- 戻り値:
rollbackToSavepoint(java.lang.Object)
またはreleaseSavepoint(java.lang.Object)
に渡されるセーブポイントオブジェクト- 例外:
NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合TransactionException
- たとえば、トランザクションが適切な状態にないためにセーブポイントを作成できなかった場合- 関連事項:
rollbackToSavepoint
指定されたセーブポイントにロールバックします。セーブポイントはその後自動的に解放されません。
releaseSavepoint(Object)
を明示的に呼び出すか、トランザクションの完了時に自動解放を使用できます。- パラメーター:
savepoint
- ロールバックするセーブポイント- 例外:
NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合TransactionException
- ロールバックが失敗した場合- 関連事項:
releaseSavepoint
指定されたセーブポイントを明示的に解放します。ほとんどのトランザクションマネージャーは、トランザクションの完了時にセーブポイントを自動的に解放することに注意してください。
トランザクションの完了時に適切なリソースのクリーンアップが最終的に行われる場合、実装はできるだけ静かに失敗する必要があります。
- パラメーター:
savepoint
- リリースするセーブポイント- 例外:
NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合TransactionException
- リリースが失敗した場合- 関連事項: