クラス SpringSessionSynchronization
- 実装されているすべてのインターフェース:
FlushableSE、Ordered、TransactionSynchronization
- 導入:
- 4.2
- 作成者:
- Juergen Hoeller
フィールドのサマリー
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEインターフェース org.springframework.transaction.support.TransactionSynchronization から継承されたフィールド
STATUS_COMMITTED, STATUS_ROLLED_BACK, STATUS_UNKNOWNコンストラクターの概要
コンストラクターコンストラクター説明SpringSessionSynchronization(SessionHolder sessionHolder, SessionFactory sessionFactory) SpringSessionSynchronization(SessionHolder sessionHolder, SessionFactory sessionFactory, boolean newSession) メソッドのサマリー
修飾子と型メソッド説明voidトランザクションのコミット後に呼び出されます。voidafterCompletion(int status) トランザクションのコミット / ロールバック後に呼び出されます。voidbeforeCommit(boolean readOnly) トランザクションのコミット前( "beforeCompletion" の前)に呼び出されます。voidトランザクションのコミット / ロールバックの前に呼び出されます。voidflush()該当する場合は、基になるセッションをデータストアにフラッシュします(例: Hibernate/JPA セッション)。intgetOrder()このトランザクション同期の実行順序を返します。voidresume()この同期を再開します。voidsuspend()この同期を一時停止します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.springframework.transaction.support.TransactionSynchronization から継承されたメソッド
savepoint, savepointRollback
コンストラクターの詳細
SpringSessionSynchronization
SpringSessionSynchronization
public SpringSessionSynchronization(SessionHolder sessionHolder, SessionFactory sessionFactory, boolean newSession)
メソッドの詳細
getOrder
public int getOrder()インターフェースからコピーされた説明:TransactionSynchronizationこのトランザクション同期の実行順序を返します。デフォルトは
Ordered.LOWEST_PRECEDENCEです。- 次で指定:
- インターフェース
OrderedのgetOrder - 次で指定:
- インターフェース
TransactionSynchronizationのgetOrder - 戻り値:
- オーダー額
- 関連事項:
suspend
public void suspend()インターフェースからコピーされた説明:TransactionSynchronizationこの同期を一時停止します。いずれかを管理している場合、TransactionSynchronizationManager からリソースのバインドを解除することになっています。resume
public void resume()インターフェースからコピーされた説明:TransactionSynchronizationこの同期を再開します。リソースを管理している場合、リソースを TransactionSynchronizationManager に再バインドするとします。flush
public void flush()インターフェースからコピーされた説明:TransactionSynchronization該当する場合は、基になるセッションをデータストアにフラッシュします(例: Hibernate/JPA セッション)。- 次で指定:
- インターフェース
FlushableSEのflush - 次で指定:
- インターフェース
TransactionSynchronizationのflush - 関連事項:
beforeCommit
インターフェースからコピーされた説明:TransactionSynchronizationトランザクションのコミット前 ( "beforeCompletion" の前) に呼び出されます。たとえば、トランザクション O/R マッピングセッションをデータベースにフラッシュできます。このコールバックは、トランザクションが実際にコミットされることを意味するものではありません。このメソッドが呼び出された後でも、ロールバックの決定が発生する可能性があります。このコールバックは、SQL ステートメントをデータベースにフラッシュするなど、コミットがまだ発生する可能性がある場合にのみ関連する作業を実行することを目的としています。
例外はコミット呼び出し元に伝播され、トランザクションのロールバックが発生することに注意してください。
- 次で指定:
- インターフェース
TransactionSynchronizationのbeforeCommit - パラメーター:
readOnly- トランザクションが読み取り専用トランザクションとして定義されているかどうか- 例外:
DataAccessException- 関連事項:
beforeCompletion
public void beforeCompletion()インターフェースからコピーされた説明:TransactionSynchronizationトランザクションのコミット / ロールバックの前に呼び出されます。トランザクションの完了前にリソースのクリーンアップを実行できます。beforeCommitが例外をスローした場合でも、このメソッドはbeforeCommitの後に呼び出されます。このコールバックにより、トランザクションの完了前にリソースを閉じることができます。afterCommit
public void afterCommit()インターフェースからコピーされた説明:TransactionSynchronizationトランザクションのコミット後に呼び出されます。メイントランザクションが正常にコミットされた直後に、さらに操作を実行できます。たとえば、確認メッセージやメールなど、メイントランザクションのコミットが成功した後に続くはずの追加操作をコミットできます。
注 : トランザクションはすでにコミットされていますが、トランザクションリソースはまだアクティブでアクセス可能です。結果として、この時点でトリガーされたデータアクセスコードは元のトランザクションに「参加」し、別のトランザクションで実行する必要があることを明示的に宣言しない限り、クリーンアップを実行できるようになります。、 ここから呼び出されるトランザクション操作には
PROPAGATION_REQUIRES_NEWを使用します。- 次で指定:
- インターフェース
TransactionSynchronizationのafterCommit
afterCompletion
public void afterCompletion(int status) インターフェースからコピーされた説明:TransactionSynchronizationトランザクションのコミット / ロールバック後に呼び出されます。トランザクションの完了後にリソースのクリーンアップを実行できます。注 : トランザクションはすでにコミットまたはロールバックされていますが、トランザクションリソースはまだアクティブでアクセス可能です。結果として、この時点でトリガーされたデータアクセスコードは元のトランザクションに「参加」し、別のトランザクションで実行する必要があることを明示的に宣言しない限り、クリーンアップを実行できるようになります。、 ここから呼び出されるトランザクション操作には
PROPAGATION_REQUIRES_NEWを使用します。- 次で指定:
- インターフェース
TransactionSynchronizationのafterCompletion - パラメーター:
status-STATUS_*定数に従った完了ステータス- 関連事項: