반응형
1. 트랜잭션
- 데이터를 접근, 변경하는 일련의 작업을 하나로 묶는 작업단위
- 작업의 완전성 보장
- 작업의 성공/실패가 분명
2. ACID (트랜잭션 성질)
-
원자성(Atomicity)
- 하나의 트랜잭션 내의 실행한 작업들은 하나로 간주
- 성공 아니면 실패 (모 아니면 도)
-
일관성(Consistency)
- 언제나 일관성 있는 데이터베이스 상태 유지
-
고립성,독립성(Isolation)
- 실행중인 각각의 트랜잭션은 서로가 간섭없이 독립적으로 진행
- 서로 영향 X
-
지속성(Durability)
- 트랜잭션이 성공적으로 수행되면 결과는 영원히 저장(반영)
3. Commit, Rollback 연산
-
Commit
- 하나의 트랜잭션이 성공적으로 종료 (DB 반영)
- 변경사항 저장
-
Rollback
- 하나의 트랜잭션이 비정상적으로 종료시 수행
- 변경사항 취소
- 트랜잭션 예외 처리
4. @Transactional
- Spring에서 제공하는 트랜잭션 처리 기능
- 클래스, 메서드위에 @Transactionl 추가
- RuntimeException 발생 시, Rollback 처리
반응형
'Web > JPA' 카테고리의 다른 글
[JPA] 지연 로딩/즉시 로딩 (0) | 2019.06.20 |
---|---|
[JPA] 영속성 컨텍스트 (Persistence context) (0) | 2019.05.28 |