春の伝播プロパティは何ですか?
Springにおける伝播属性は、トランザクションの伝播動作を制御するために使用されます。以下には、いくつかの属性が含まれています。
- 必須:このメソッドはトランザクション内で実行する必要があり、現在のトランザクションが存在する場合はそのトランザクションに参加し、存在しない場合は新しいトランザクションを作成します。
- SUPPORTS:現在のメソッドがトランザクション内で実行可能であり、既存のトランザクションがある場合はそのトランザクションに参加し、トランザクションが存在しない場合は非トランザクションの方法で実行されます。
- MANDATORY:このメソッドはトランザクション内で実行される必要があり、すでにトランザクションが存在する場合はそのトランザクションに参加し、存在しない場合は例外をスローします。
- REQUIRES_NEW:現在のメソッドは新しいトランザクションで実行する必要があり、既存のトランザクションがある場合はそのトランザクションを一時停止します。
- サポートされていません:このメソッドはトランザクション内で実行すべきではありません。現在トランザクションが存在する場合は、現在のトランザクションを一時停止します。
- 現在の方法はトランザクション内で実行してはならず、トランザクションがすでに存在する場合は例外を投げます。
- NESTED:これは、現在のメソッドがネストしたトランザクション内で実行される必要があり、すでにトランザクションが存在する場合は、その中でネストされたトランザクションが実行されます。トランザクションが存在しない場合は、新しいトランザクションが作成されます。
@Transactional注釈で指定することで、これらの伝播属性はメソッドのトランザクション動作を制御することができます。