트랜잭션이 이미 진행 중(아직 커밋이나 롤백 안함)인데 추가로 트랜잭션을 수행하면 어떻게 처리해야할까에 대한 질문의 답이다.

e.g.) 트랜잭션 중 일부만 실패하면 어떻게 처리하지? 등에 대한 처리를 고민해야함.

스프링의 기본 원칙 (REQUIRED)

원칙

Untitled

스프링은 여러 트랜잭션이 함께 사용되는 경우 처음 트랜잭션을 시작한 외부 트랜잭션이 실제 물리 트랜잭션을 관리하도록 한다. → 다른 내부 트랜잭션들이 아무리 커밋을 해도 아무 동작안함.

외부 트랜잭션과 내부 트랜잭션 만들어질 때 흐름

Untitled

Untitled