순수한 서비스 계층
JDBC를 이용해 트랜잭션을 사용할 때의 문제점
트랜잭션 처리 부분을 추상화하여 서비스 계층이 여기에 의존하도록 만들면 된다.
하지만 스프링은 이미 이런 트랜잭션 추상화 인터페이스와 트랜잭션 처리를 담당하는 구현체를 제공하고 있으므로 굳이 만들지 않아도 된다.
스프링 트랜잭션 매니저가 제공하는 기능은 2가지다.
트랜잭션 추상화
리소스 동기화
트랜잭션 매니저와 트랜잭션 동기화 매니저
트랜잭션 동기화 매니저
동작 방식
트랜잭션 매니저를 사용하면 커넥션 동기화 작업을 해주어 코드가 깔끔해진다.