6.1 트랜잭션 코드의 분리

1. 메소드 분리

2. DI를 이용한 클래스의 분리

1) DI 적용을 이용한 트랜잭션 분리

2) UserService 인터페이스 도입

3) 분리된 트랜잭션 기능