クラス DelegatingTransactionDefinition
- 実装されたすべてのインターフェース:
SerializableSE
,TransactionDefinition
- 既知の直属サブクラス
DelegatingTransactionAttribute
TransactionDefinition
インスタンスに委譲する TransactionDefinition
実装。これはサブクラス化することを目的としており、サブクラスは単にターゲットインスタンスに委譲することを想定していない特定のメソッドをオーバーライドするためです。- 導入:
- 3.0
- 作成者:
- Juergen Hoeller
- 関連事項:
フィールドサマリー
インターフェース org.springframework.transaction.TransactionDefinition から継承されたフィールド
ISOLATION_DEFAULT, ISOLATION_READ_COMMITTED, ISOLATION_READ_UNCOMMITTED, ISOLATION_REPEATABLE_READ, ISOLATION_SERIALIZABLE, PROPAGATION_MANDATORY, PROPAGATION_NESTED, PROPAGATION_NEVER, PROPAGATION_NOT_SUPPORTED, PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW, PROPAGATION_SUPPORTS, TIMEOUT_DEFAULT
コンストラクターのサマリー
コンストラクターコンストラクター説明DelegatingTransactionDefinition
(TransactionDefinition targetDefinition) 指定されたターゲット属性の DelegatingTransactionAttribute を作成します。メソッドのサマリー
コンストラクターの詳細
DelegatingTransactionDefinition
指定されたターゲット属性の DelegatingTransactionAttribute を作成します。- パラメーター:
targetDefinition
- 委譲先のターゲット TransactionAttribute
メソッドの詳細
getPropagationBehavior
public int getPropagationBehavior()インターフェースからコピーされた説明:TransactionDefinition
伝播動作を返します。this interface
で定義されたPROPAGATION_XXX
定数のいずれかを返さなければなりません。デフォルトは
TransactionDefinition.PROPAGATION_REQUIRED
です。getIsolationLevel
public int getIsolationLevel()インターフェースからコピーされた説明:TransactionDefinition
分離レベルを返します。this interface
で定義されたISOLATION_XXX
定数のいずれかを返さなければなりません。これらの定数は、Connection
SE の同じ定数の値と一致するように設計されています。新しく開始されたトランザクションにのみ適用されるため、
TransactionDefinition.PROPAGATION_REQUIRED
またはTransactionDefinition.PROPAGATION_REQUIRES_NEW
で使用するために特別に設計されています。異なる分離レベルの既存のトランザクションに参加するときに分離レベルの宣言を拒否したい場合は、トランザクションマネージャーで "validateExistingTransactions" フラグを "true" に切り替えることを検討してください。デフォルトは
TransactionDefinition.ISOLATION_DEFAULT
です。TransactionDefinition.ISOLATION_DEFAULT
以外のレベルが指定された場合、カスタム分離レベルをサポートしないトランザクションマネージャーは例外をスローすることに注意してください。getTimeout
public int getTimeout()インターフェースからコピーされた説明:TransactionDefinition
トランザクションタイムアウトを返します。秒数または
TransactionDefinition.TIMEOUT_DEFAULT
を返す必要があります。新たに開始されたトランザクションにのみ適用されるため、
TransactionDefinition.PROPAGATION_REQUIRED
またはTransactionDefinition.PROPAGATION_REQUIRES_NEW
での使用専用に設計されています。タイムアウトをサポートしないトランザクションマネージャーは、
TransactionDefinition.TIMEOUT_DEFAULT
以外のタイムアウトが指定された場合に例外をスローすることに注意してください。デフォルトは
TransactionDefinition.TIMEOUT_DEFAULT
です。- 次で指定:
- インターフェース
TransactionDefinition
のgetTimeout
- 戻り値:
- トランザクションのタイムアウト
isReadOnly
public boolean isReadOnly()インターフェースからコピーされた説明:TransactionDefinition
読み取り専用トランザクションとして最適化するかどうかを返します。読み取り専用フラグは、実際のリソーストランザクション(
TransactionDefinition.PROPAGATION_REQUIRED
/TransactionDefinition.PROPAGATION_REQUIRES_NEW
)によって裏付けられているか、リソースレベルで非トランザクションで動作している(TransactionDefinition.PROPAGATION_SUPPORTS
)かに関わらず、すべてのトランザクションコンテキストに適用されます。後者の場合、フラグは HibernateSession
などのアプリケーション内の管理対象リソースにのみ適用されます。これは、実際のトランザクションサブシステムのヒントとしてのみ機能します。 必ずしも書き込みアクセスの試行が失敗するわけではありません。読み取り専用ヒントを解釈できないトランザクションマネージャーは、読み取り専用トランザクションを要求されたときに例外をスローしません。
- 次で指定:
- インターフェース
TransactionDefinition
のisReadOnly
- 戻り値:
- トランザクションを読み取り専用として最適化する場合は
true
(デフォルトでfalse
) - 関連事項:
getName
インターフェースからコピーされた説明:TransactionDefinition
このトランザクションの名前を返します。null
にすることができます。これは、該当する場合、トランザクションモニターに表示されるトランザクション名として使用されます(たとえば、WebLogic's)。
Spring の宣言的トランザクションの場合、公開される名前は
fully-qualified class name + "." + method name
(デフォルト)です。- 次で指定:
- インターフェース
TransactionDefinition
のgetName
- 戻り値:
- このトランザクションの名前(デフォルトでは
null
} - 関連事項:
equals
hashCode
public int hashCode()toString