인프런 커뮤니티 질문&답변

이ᄒ님의 프로필 이미지
이ᄒ

작성한 질문수

스프링 DB 2편 - 데이터 접근 활용 기술

@Transactional 질문이 있습니다.

해결된 질문

작성

·

241

·

수정됨

2

강의 중 트랜잭션 관련 부분을 보다 @Transactional과 직접 트랜잭션을 사용하는 예제를 떠올려 생각중인데 제가 생각한것이 맞는지 궁금하여 질문드립니다.

 

@Transactional이 적용된 A클래스의 메서드에서

@Transactional이 적용되지 않은 B클래스의 메서드를 호출하고

B클래스 메서드의 내부는 직접 트랜잭션 매니져로 트랜잭션을 생성하고 롤백하는 로직이 포함되어 있는 상황이 있다고 가정한다면

 

트랜잭션 처리 순서는

A클래스에서 트랜잭션이 시작되고

B클래스는 @Transactional이 없어서 트랜잭션AOP 프록시가 생성되지 않는것과는 상관없이

트랜잭션 매니져로 직접 생성한 트랜잭션으로 인해 A클래스의 트랜잭션에 합류하게 되어 B클래스의 롤백으로 인해 결과는 모두 롤백되는게 맞는걸까요?

 

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 이ᄒ님

생각하신 내용이 맞습니다.

@Transactional도 결과적으로 보면 같은 원리로 동작합니다.

감사합니다.

이ᄒ님의 프로필 이미지
이ᄒ
질문자

감사합니다 !!

이ᄒ님의 프로필 이미지
이ᄒ

작성한 질문수

질문하기