Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 알티노
- 핑퐁로봇
- 코딩수업
- 서울시여성가족재단
- html
- 콜백함수
- 은평구립도서관
- 도서관 수업
- Spring Security
- 스마트리움
- 초등학생 코딩수업
- transaction
- 2024겨울방학 코딩부트캠프
- spring boot
- 2023 ICT R&D 주간
- 이것이 자바다
- 초등학교 코딩수업
- 뚜루뚜루
- 드론
- 2024우먼테크위크
- spring
- Java
- 코딩부트캠프
- Cos Pro
- 자율주행자동차
- CSS
- jsp
- js
- 초등학생 겨울방학 놀이
- 자바
Archives
- Today
- Total
블로그
transaction 본문
✅ transaction(트랜잭션)
정의
트랜잭션은 데이터베이스에서 데이터를 처리하는 기본 단위입니다.
트랜잭션은 여러 개의 데이터 조작 작업을 하나의 논리적인 작업 단위로 묶어 처리하는 것을 의미합니다.
트랜잭션은 ACID 특성을 가지고 있어 데이터베이스의 일관성과 신뢰성을 보장합니다.
ACID 특성
- 원자성(Atomicity): 트랜잭션의 작업 단위는 모두 성공하거나 모두 실패해야 한다.
- 일관성(Consistency): 트랜잭션이 실행되기 전과 후에 데이터베이스는 항상 일관된 상태를 유지해야 한다.
- 독립성(Isolation): 트랜잭션은 다른 트랜잭션의 작업에 영향을 받지 않아야 한다.
- 지속성(Durability): 트랜잭션이 성공적으로 완료되면 그 결과는 영구적으로 데이터베이스에 반영되어야 한다.
ACID 트랜잭션은 일련의 단계를 준수하여 데이터 무결성을 유지한다.
Commit과 Rollback
- Commit: 트랜잭션이 성공적으로 완료되면 데이터베이스에 영구적으로 반영된다.
- Rollback: 트랜잭션 중 오류가 발생하면 트랜잭션 전체가 취소되고 데이터베이스는 이전 상태로 복구된다.
✅ 스프링에서 transaction을 관리하는 법
어노테이션을 이용한 설정
@Transactional 어노테이션을 클래스 단위 혹은 메서드 단위에 선언해준다.
클래스에 선언하게 되면, 해당 클래스에 속하는 메서드에 공통적으로 적용된다.
메서드에 선언하게 되면, 해당 메서드에만 적용된다.
checked Exception, Unchecked Exception의 트랜잭션 처리

checked exception도 예외처리를 해 주려면 다음과 같이 어노테이션을 작성한다.
@Transactional(rollbackFor = Exception.class)
'개발자 준비과정 > Spring, SpringBoot, JSP' 카테고리의 다른 글
MyBatis의 @Options 어노테이션: useGeneratedKeys 속성 이해하기 (0) | 2024.05.07 |
---|---|
Post, Redirect, Get (PRG패턴) (0) | 2024.05.02 |
JDBC 작성 (0) | 2024.04.22 |
SQL) INSERT INTO, executeQuery() 메소드 (0) | 2024.04.19 |
Spring MVC, JDBC를 사용하여 페이징하기 (0) | 2024.04.19 |