ラップされたトランザクションでdatEntegrityviolationExceptionをキャッチできません

StackOverflow https://stackoverflow.com/questions/4288364

質問

DBトランザクションの管理には春3を使用しています。例外が提起されるたびに、例外をキャッチし、対応するメッセージを返します。しかし、Springがトランザクションをコミットすると、例外が再び提起され、 org.springframework.dao.DataIntegrityValidationException. 。その例外をどのように処理できますか?インターセプターなどを使用する必要がありますか?誰かがすでにこの問題を抱えていましたか?

前もって感謝します

役に立ちましたか?

解決

トランザクション境界がサービスレイヤーにある場合(必要な場合は)、境界の外側で例外をキャッチする必要があります。スプリングの仕組みは、例外がトランザクション境界の外側のバブルが泡立つ場合、トランザクションがロールバックされることです。例外をキャッチすることで、そのプロセスを停止しますが、おそらく望んでいません。

インターセプターは、トランザクション境界以外の例外を扱う良い方法です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top