Skip to content

Latest commit

 

History

History
24 lines (17 loc) · 782 Bytes

TIL230114.md

File metadata and controls

24 lines (17 loc) · 782 Bytes

Daily to do list

Java


Spring


CS


알고리즘


오늘의 회고

메서드 내부 호출 때문에 트랜잭션 프록시가 적용되지 않는 문제를 해결하기 위해 internal() 메서드를 별도의 클래스로 분리

실제 호출되는 흐름

  1. 클라이언트인 테스트 코드는 callService.external() 을 호출
  2. callService 는 실제 callService 객체 인스턴스
  3. callService 는 주입 받은 internalService.internal() 을 호출
  4. internalService 는 트랜잭션 프록시이다. internal() 메서드에 @Transactional 이 붙어 있으므로 트랜잭션 프록시는 트랜잭션을 적용
  5. 트랜잭션 적용 후 실제 internalService 객체 인스턴스의 internal() 을 호출