이해 I 가정 자바 호출과 다음 스택 트레이스 :자바 봄 : @Transactional rollbackFor 및 트랜잭션 경계
B.method2 (annotated with a plain @Transactional)
A.method1 (annotated with a plain @Transactional)
Main.main (starting point of the call, with no current transaction)
내가 A.method1를 입력 할 때 트랜잭션이 시작되는 것으로 예상 - 트랜잭션이 커밋 될 것이다 (또는 롤백) A.method1 남아있을 때. 나는 또한 B.method2 내에서 동일한 거래가 사용될 것으로 기대한다.
RuntimeException은 B.method2에서 발생합니다. 이것은 RollbackFor에 대해 기본적으로 '나열된'예외입니다. 예외는 A.method1 내에서 catch되지만 B.method2를 벗어날 때 @Transactional의 경계를 전달합니다.
이것은 내 질문입니다. (현재) 트랜잭션이 롤백으로 표시 될 것인가 아닌가?
누군가가 대답 할 때까지 기다리는 것이 아니라 빨리 시도해 주시겠습니까? – skaffman
실제 아니요 - 다양한 설정 (AOP, AspectJ,로드 타임/에이전트 짜기 ...)으로 Spring을 구성 할 수 있기 때문입니다. 이것은 @Transactional의 개념에 대한 질문입니다. – aanno