0
私はSpring + JPAアプリケーションを持っています。例外は、将来的に発生したとき、私は、データベースの変更をロールバックしたい今後例外をスローするときにトランザクションをロールバックする方法はありますか?
@Transactional(rollbackFor = Exception.class)
public MyEntity execute(MyEntity entity) {
//database operations
em.persist(entity);
Executors.newSingleThreadExecutor().submit(() -> {
//long calculations
if (errorOccurs)
throw new RuntimeException("Rollback transaction");
});
return entity;
}
:私のサービスは、いくつかのデータベースの永続操作と非同期長い計算を行います。どうしたらいいですか?
私にとって、トランザクションでの長い計算は明らかに悪い考えです。 –
私は間違っているかもしれませんが、あなたは解決策のためにAOPを見ましたか? – CKing