JPA Propagation은 트랜잭션 동작 도중 다른 트랜잭션을 호출(실행)하는 상황에 선택할 수 있는 옵션
@Transactional의 propagation 속성을 통해 피호출 트랜잭션의 입장에서는 호출한 쪽의 트랜잭션을 그대로 사용할 수도 있고, 새롭게 트랜잭션을 생성할 수도 있습니다.
REQUIRED: default 값이며, 부모 트랜잭션 내에서 실행하며 부모 트랜잭션이 없을 경우 새로운 트랜잭션을 생성합니다.
REQUIRED_NEW: 기존에 트랜잭션이 있으면 그것을 중단하고, 새로운 것을 생성합니다.
이 외에도 종류가 REQUIRED_NEW, SUPPORTS, MANDATORY, NOT_SUPPORT, NEVER, NESTED 가 있습니다.
'Back-end > JPA' 카테고리의 다른 글
[JPA] Fetch Type란? (0) | 2021.11.22 |
---|---|
[JPA] N+1 문제가 발생하는 이유와 해결 방법 (0) | 2021.11.22 |
[JPA] JPA 영속성 컨텍스트의 이점 5가지 (0) | 2021.11.22 |
[JPA] JPA를 사용하는 이유 (0) | 2021.11.22 |
[JPA] JPA란? (0) | 2021.11.17 |