クラス DefaultTransactionStatus
java.lang.ObjectSE
org.springframework.transaction.support.AbstractTransactionStatus
org.springframework.transaction.support.DefaultTransactionStatus
- 実装済みのインターフェース一覧:
FlushableSE、SavepointManager、TransactionExecution、TransactionStatus
AbstractPlatformTransactionManager によって使用される TransactionStatus インターフェースのデフォルト実装。基礎となる「トランザクションオブジェクト」の概念に基づいています。AbstractPlatformTransactionManager が内部的に必要とするすべてのステータス情報を保持します。これには、具体的なトランザクションマネージャーの実装によって決定される一般的なトランザクションオブジェクトが含まれます。
SavepointManager インターフェースを実装するトランザクションオブジェクトへのセーブポイント関連メソッドの委譲をサポートします。
注 : これは、特にないテスト環境でのモックトランザクションマネージャーのため、他の PlatformTransactionManager の実装で使用するためのものではありません。代わりに、プレーンな TransactionStatus インターフェースの代替 SimpleTransactionStatus クラスまたはモックを使用してください。
コンストラクター概要
コンストラクターコンストラクター説明DefaultTransactionStatus(ObjectSE transaction, boolean newTransaction, boolean newSynchronization, boolean readOnly, boolean debug, ObjectSE suspendedResources) 新しいDefaultTransactionStatusインスタンスを作成します。方法の概要
修飾子と型メソッド説明voidflush()トランザクションオブジェクトがSmartTransactionObjectインターフェースを実装している場合は、トランザクションオブジェクトにフラッシュを委譲します。protected SavepointManagerこの実装は、基になるトランザクションオブジェクトのSavepointManagerインターフェースを公開します(存在する場合)。このトランザクションで中断されているリソースの所有者を返します(ある場合)。基になるトランザクションオブジェクトを返します。boolean実際のトランザクションがアクティブかどうかを返します。booleanisDebug()このトランザクションの進行状況をデバッグするかどうかを返します。booleanトランザクションオブジェクトがSmartTransactionObjectインターフェースを実装している場合は、トランザクションオブジェクトをチェックして、ロールバックのみのフラグを決定します。booleanこのトランザクションに対して新しいトランザクション同期が開かれた場合に返されます。boolean現在のトランザクションが新しいかどうかを返します。それ以外の場合は、既存のトランザクションに参加しているか、最初の実際のトランザクションで実行されていない可能性があります。booleanこのトランザクションが読み取り専用トランザクションとして定義されている場合に返されます。boolean基になるトランザクションがSavepointManagerインターフェースを実装しているため、セーブポイントをサポートしているかどうかを返します。クラス org.springframework.transaction.support.AbstractTransactionStatus から継承されたメソッド
createAndHoldSavepoint, createSavepoint, getSavepoint, hasSavepoint, isCompleted, isLocalRollbackOnly, isRollbackOnly, releaseHeldSavepoint, releaseSavepoint, rollbackToHeldSavepoint, rollbackToSavepoint, setCompleted, setRollbackOnly, setSavepoint
コンストラクターの詳細
DefaultTransactionStatus
public DefaultTransactionStatus(@Nullable ObjectSE transaction, boolean newTransaction, boolean newSynchronization, boolean readOnly, boolean debug, @Nullable ObjectSE suspendedResources) 新しいDefaultTransactionStatusインスタンスを作成します。- パラメーター:
transaction- 内部トランザクション実装の状態を保持できる基になるトランザクションオブジェクトnewTransaction- トランザクションが新しい場合、それ以外の場合は既存のトランザクションに参加しますnewSynchronization- 指定されたトランザクションに対して新しいトランザクション同期が開かれた場合readOnly- トランザクションが読み取り専用としてマークされているかどうかdebug- このトランザクションを処理するには、デバッグログを有効にする必要がありますか? ここでキャッシュすることで、デバッグシステムを有効にするかどうかをログシステムに問い合わせる繰り返し呼び出しを防ぐことができます。suspendedResources- このトランザクションのために中断されたリソースの所有者(存在する場合)
方法の詳細
getTransaction
基になるトランザクションオブジェクトを返します。- 例外:
IllegalStateExceptionSE- アクティブなトランザクションがない場合
hasTransaction
public boolean hasTransaction()実際のトランザクションがアクティブかどうかを返します。isNewTransaction
public boolean isNewTransaction()インターフェースからコピーされた説明:TransactionExecution現在のトランザクションが新しいかどうかを返します。それ以外の場合は、既存のトランザクションに参加しているか、最初の実際のトランザクションで実行されていない可能性があります。isNewSynchronization
public boolean isNewSynchronization()このトランザクションに対して新しいトランザクション同期が開かれた場合に返されます。isReadOnly
public boolean isReadOnly()このトランザクションが読み取り専用トランザクションとして定義されている場合に返されます。isDebug
public boolean isDebug()このトランザクションの進行状況をデバッグするかどうかを返します。これは、logger.isDebugEnabled()への繰り返し呼び出しを防ぐために、AbstractPlatformTransactionManagerによって最適化として使用されます。実際にはクライアントコードを対象としていません。getSuspendedResources
このトランザクションで中断されているリソースの所有者を返します(ある場合)。isGlobalRollbackOnly
public boolean isGlobalRollbackOnly()トランザクションオブジェクトがSmartTransactionObjectインターフェースを実装している場合は、トランザクションオブジェクトをチェックして、ロールバックのみのフラグを決定します。たとえばタイムアウトが発生した場合など、グローバルトランザクション自体がトランザクションコーディネーターによってロールバックのみとマークされている場合、
trueを返します。- オーバーライド:
- クラス
AbstractTransactionStatusのisGlobalRollbackOnly - 関連事項:
getSavepointManager
この実装は、基になるトランザクションオブジェクトのSavepointManagerインターフェースを公開します(存在する場合)。- オーバーライド:
- クラス
AbstractTransactionStatusのgetSavepointManager - 例外:
NestedTransactionNotSupportedException- セーブポイントがサポートされていない場合- 関連事項:
isTransactionSavepointManager
public boolean isTransactionSavepointManager()基になるトランザクションがSavepointManagerインターフェースを実装しているため、セーブポイントをサポートしているかどうかを返します。flush
public void flush()トランザクションオブジェクトがSmartTransactionObjectインターフェースを実装している場合は、トランザクションオブジェクトにフラッシュを委譲します。- 次で指定:
- インターフェース
FlushableSE内のflush - 次で指定:
- インターフェース
TransactionStatus内のflush - オーバーライド:
- クラス
AbstractTransactionStatusのflush - 関連事項: