rlackdals_98.log
로그인
rlackdals_98.log
로그인
Spring 17. 트랜잭션
김창민
·
2024년 8월 16일
팔로우
0
BE
목록 보기
37/50
트랜잭션
DB 데이터들의 무결성과 정합성을 유지하기 위한 논리적 개념
즉, DB 데이터들을 안전하게 관리하기 위한 개념임
하나의 트랜잭션엔 여러 SQL문이 포함될 수 있음
과정
한 트랜잭션 내부의 모든 SQL문이 성공적으로 수행하면 DB에 변경을 반영한다.
한 트랜잭션 내부의 SQL문중 하나라도 실패하면 롤백한다.
JPA의 트랜잭션
JPA에서는 영속성 컨텍스트가 트랜젝션임
영속성 컨택스트 내부 객체들이 변경되면, 해당 정보들을 쓰기 지연 저장소에 보관했다가. 마지막에 한번에 DB에 요청한다.
이를 위해선 EntityManager에서 EntityTransaction를 가져와서 적용한다.
EntityTransaction et = em.getTransaction();
et.begin();
: 트랜잭션 시작
et.commit();
: 트랜잭션 작업을 DB에 반영
et.rollback();
: 롤백임
김창민
일일 회고 : https://rlackdals981010.github.io/
팔로우
이전 포스트
Spring 16. 영속성 컨텍스트
다음 포스트
Spring 18. SpringBoot의 JPA
0개의 댓글
댓글 작성