티스토리 뷰

반응형

1. 오라클

read commit

 

2. MySQL

repeatable read

 

둘은 select시에 트랜잭션을 걸게 되면 차이가 들어난다. 무슨 차이가 있는지 살펴보자.

 

PHANTOM READ (데이터가 보였다 안보였다)

-> 정합성이 깨짐

 

3. 스프링부트의 트랜잭션

- 세션의 시작은 서블릿이 시작되는 시점 부터~ (세션은 영속성 컨텍스트를 포함)

- 트랜잭션의 시작은 서비스 레이어부터, JDBC 커넥션도 이 시점부터.

- 트랜잭션의 종료는 서비스 계층에서 종료, JDBC 커넥션도 이 시점 부터 종료.

- 세션은 컨트롤러 영역까지 끌고 가기 때문에 영속성이 보장되어 select가 가능해지고 lazy-loading이 가능해진다.

 

참고 블로그 : https://getinthere.tistory.com/27

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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
글 보관함