에 롤백 트랜잭션이 엔티티가봄 데이터 : 낙관적 인 방식으로 구현</p> <pre><code>@Entity class A { ... @Version int version; } </code></pre> <p><code>A</code> 인스턴스 업데이트 : 재시도
의견에 명시된 바와 같이@Transactional(rollbackFor = {StaleStateException.class})
@Retryable(value = {StaleStateException.class})
public void updateA() {
A a = findA();
B b = new B();
// Update "a" somehow
a.update();
// "b" is saved on each retry!
save(b);
}
는, 그 트랜잭션이 롤백 할되지 않은 것 같다 때 StaleStateException
각 재시도시 B
인스턴스가 저장됩니다.
재시도시 트랜잭션을 롤백 할 수 있습니까?
희망하는 동작은 성공한 a
업데이트에서만 b
이 저장된다는 것입니다.