본문 바로가기

공부 기록/영상 후기

[10분 테코톡] 리차드의 @Transactional

https://youtu.be/taAp_u83MwA

트랜잭션 : DB에 모두 저장되거나, 모두 저장되지 않는 작업의 단위

 

- 작업 단위를 묶어주지 않았을 경우, 서로 다른 커넥션을 사용하는 경우 => 개별 작업으로 처리됨

- 작업 단위를 트랜잭션으로 묶었을 경우 => 전부 반영 또는 미반영

 

AOP의 등장

트랜잭션의 시작 -> {관심사 로직 수행} -> 커밋 또는 롤백

프록시 객체의 도입 => 타겟 객체를 상속해서 재정의한 클래스

  

- 선언적 트랜잭션 관리 => @Transactional

- 프로그래밍 방식 트랜잭션 관리 => 코드로 직접 작성하는 방식

 

요약

- 빈 생성 시, @Transactional 어노테이션이 있으면 프록시 객체가 빈으로 등록된다.

- 스프링이 제공하는 선언적 트랜잭션 관리를 통해 서비스 레이어에 트랜잭션 관련된 코드 혹은 특정 기술에 종속된 코드를 분리했다.