クラス 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トランザクションのコミット後に呼び出されます。- void- afterCompletion- (int status) トランザクションのコミット / ロールバック後に呼び出されます。- void- beforeCommit- (boolean readOnly) トランザクションのコミット前( "beforeCompletion" の前)に呼び出されます。- voidトランザクションのコミット / ロールバックの前に呼び出されます。- void- flush()該当する場合は、基になるセッションをデータストアにフラッシュします(例: Hibernate/JPA セッション)。- int- getOrder()このトランザクション同期の実行順序を返します。- void- resume()この同期を再開します。- void- suspend()この同期を一時停止します。
- コンストラクターの詳細- SpringSessionSynchronization
- SpringSessionSynchronizationpublic SpringSessionSynchronization- (SessionHolder sessionHolder, SessionFactory sessionFactory, boolean newSession) 
 
- メソッドの詳細- getOrderpublic int getOrder()インターフェースからコピーされた説明:- TransactionSynchronizationこのトランザクション同期の実行順序を返します。- デフォルトは - Ordered.LOWEST_PRECEDENCEです。- 次で指定:
-  インターフェース OrderedのgetOrder
- 次で指定:
-  インターフェース TransactionSynchronizationのgetOrder
- 戻り値:
- オーダー額
- 関連事項:
 
- suspendpublic void suspend()インターフェースからコピーされた説明:- TransactionSynchronizationこの同期を一時停止します。いずれかを管理している場合、TransactionSynchronizationManager からリソースのバインドを解除することになっています。
- resumepublic void resume()インターフェースからコピーされた説明:- TransactionSynchronizationこの同期を再開します。リソースを管理している場合、リソースを TransactionSynchronizationManager に再バインドするとします。
- flushpublic void flush()インターフェースからコピーされた説明:- TransactionSynchronization該当する場合は、基になるセッションをデータストアにフラッシュします(例: Hibernate/JPA セッション)。- 次で指定:
-  インターフェース FlushableSEのflush
- 次で指定:
-  インターフェース TransactionSynchronizationのflush
- 関連事項:
 
- beforeCommitインターフェースからコピーされた説明:- TransactionSynchronizationトランザクションのコミット前 ( "beforeCompletion" の前) に呼び出されます。たとえば、トランザクション O/R マッピングセッションをデータベースにフラッシュできます。- このコールバックは、トランザクションが実際にコミットされることを意味するものではありません。このメソッドが呼び出された後でも、ロールバックの決定が発生する可能性があります。このコールバックは、SQL ステートメントをデータベースにフラッシュするなど、コミットがまだ発生する可能性がある場合にのみ関連する作業を実行することを目的としています。 - 例外はコミット呼び出し元に伝播され、トランザクションのロールバックが発生することに注意してください。 - 次で指定:
-  インターフェース TransactionSynchronizationのbeforeCommit
- パラメーター:
- readOnly- トランザクションが読み取り専用トランザクションとして定義されているかどうか
- 例外:
- DataAccessException
- 関連事項:
 
- beforeCompletionpublic void beforeCompletion()インターフェースからコピーされた説明:- TransactionSynchronizationトランザクションのコミット / ロールバックの前に呼び出されます。トランザクションの完了前にリソースのクリーンアップを実行できます。- beforeCommitが例外をスローした場合でも、このメソッドは- beforeCommitの後に呼び出されます。このコールバックにより、トランザクションの完了前にリソースを閉じることができます。
- afterCommitpublic void afterCommit()インターフェースからコピーされた説明:- TransactionSynchronizationトランザクションのコミット後に呼び出されます。メイントランザクションが正常にコミットされた直後に、さらに操作を実行できます。- できます。確認メッセージやメールなど、メイントランザクションが正常にコミットされた後に実行されるはずの操作をさらにコミットします。 - 注 : トランザクションはすでにコミットされていますが、トランザクションリソースはまだアクティブでアクセス可能です。結果として、この時点でトリガーされたデータアクセスコードは元のトランザクションに「参加」し、別のトランザクションで実行する必要があることを明示的に宣言しない限り、クリーンアップを実行できるようになります。、 ここから呼び出されるトランザクション操作には - PROPAGATION_REQUIRES_NEWを使用します。- 次で指定:
-  インターフェース TransactionSynchronizationのafterCommit
 
- afterCompletionpublic void afterCompletion- (int status) インターフェースからコピーされた説明:- TransactionSynchronizationトランザクションのコミット / ロールバック後に呼び出されます。トランザクションの完了後にリソースのクリーンアップを実行できます。- 注 : トランザクションはすでにコミットまたはロールバックされていますが、トランザクションリソースはまだアクティブでアクセス可能です。結果として、この時点でトリガーされたデータアクセスコードは元のトランザクションに「参加」し、別のトランザクションで実行する必要があることを明示的に宣言しない限り、クリーンアップを実行できるようになります。、 ここから呼び出されるトランザクション操作には - PROPAGATION_REQUIRES_NEWを使用します。- 次で指定:
-  インターフェース TransactionSynchronizationのafterCompletion
- パラメーター:
- status-- STATUS_*定数に従った完了ステータス
- 関連事項: