ラップされたトランザクションでdatEntegrityviolationExceptionをキャッチできません
-
28-09-2019 - |
質問
DBトランザクションの管理には春3を使用しています。例外が提起されるたびに、例外をキャッチし、対応するメッセージを返します。しかし、Springがトランザクションをコミットすると、例外が再び提起され、 org.springframework.dao.DataIntegrityValidationException
. 。その例外をどのように処理できますか?インターセプターなどを使用する必要がありますか?誰かがすでにこの問題を抱えていましたか?
前もって感謝します
解決
トランザクション境界がサービスレイヤーにある場合(必要な場合は)、境界の外側で例外をキャッチする必要があります。スプリングの仕組みは、例外がトランザクション境界の外側のバブルが泡立つ場合、トランザクションがロールバックされることです。例外をキャッチすることで、そのプロセスを停止しますが、おそらく望んでいません。
インターセプターは、トランザクション境界以外の例外を扱う良い方法です。
所属していません StackOverflow