Search

트랜잭션 동기화

트랜잭션 동기화

트랜잭션을 시작하기 위한 Connection 객체를 따로 보관해두고, DAO에서 호출할 때 저장된 Connection을 가져다 사용하는 방식이다.

트랜잭션 동기화 적용하기

TransactionSystemException 이 발생한다.
이유는 connection 이 잡혀버려서 rollback 시점에서 이미 끝난 커넥션이라는 에러
1.
Exception 을 바꾼다.
a.
매우 끼워맞추기
2.
Connection 을 생성하는 부분이 try with resources 였는데 connection 이 자동으로 닫히지 못하게 resources 바깥으로 보냄
a.
결국 connection 이 닫히지 않음
b.
테스트에 @Transactional 이 달려 있을 때 Rollback 안시키고 Commit 시키고 싶으면 @Commit 도 함께 달아준다.