Rollback
[JPA] UnexpectedRollbackException과 AOP에서 상황별 롤백(rollback)여부에 대해 알아보자
[JPA] UnexpectedRollbackException과 AOP에서 상황별 롤백(rollback)여부에 대해 알아보자
2023.06.30이번 게시글은 Spring에서 자주 사용하는 @Transactional이 예외를 마주하게 되었을 때 발생하는 롤백에 대해서 정리해보고자 합니다. @Transactional에서 여러 propagation 옵션이 있는데 이번 게시글에서는 REQUIRED, REQUIRES_NEW에 대해서만 다룰 예정입니다. 두 개의 propagation 상황에서 어떤 Exception이 언제 발생하는지에 따라 롤백이 일어나는지 아닌지에 대해서도 다루려고 합니다. 그리고 또한 Custom AOP를 적용했을 때 그 안에서 발생하는 예외는 어떻게 처리가 되는지 정리해보고자 합니다. 지금부터 여러 케이스를 통해 롤백 발생여부를 알아보려 하는데요. 기본적인 테스트를 위한 로직 틀은 다음과 같습니다. @Slf4j @Service @Re..