質問

を使用してい春2.5ザクションマネジメントとして、以下の設定:

Bean1

@Transactional(noRollbackFor = { Exception.class })
public void execute() {
  try {
    bean2.execute();
  } catch (Exception e) {
    // persist failure in database (so the transaction shouldn't fail)
    // the exception is not re-thrown
  }
}

Bean2

@Transactional
public void execute() {
  // do something which throws a RuntimeException
}

の障害は続きへのDBからBean1での取引はロールバック.

んを追加したい noRollbackFor にBean2で使用されるのではないが、"ロジカル(論理的)である取扱い実行時例外を除います。

があるのを避ける私の取引きを戻すロールバック時のみBean2.execute()を呼ばれるBean1?

他にないといけないと思い、私のベストオプションが持続私の失敗以内に新します。何より清潔できますか?

役に立ちましたか?

解決

この注意アノテーションを...クラスは再利用可能!

をしている場合の設定お取引のXML合いすることができます。

と仮定してご利用のXML構成:の場合は得られない高価で資源を作成できます別のインスタンスbean2は、使用上のコードで指定します。使用することで、設定についてご指定の上ないロールバックのための例外です。

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