46. 스프링의 전통적인 트랜잭션
by 볼빵빵오춘기- requset : 홍길동 → 장보고에게 10000원 송금
- web.xml (DB 연결 세션 생성, 트랜잭션 시작 + 영속성 컨텍스트 시작(사용자별로 생성된다.))
- 필터
- Controller - 요청분기
- Service - 송금(), repository - 계좌테이블에서 홍길동 계좌 select, 장보고 계좌 select
- 5번에서 홍길동과 장보고 계좌에서 select를 했기 때문에 실제로 DB에서 계좌테이블에 대한 영속성컨텍스트에 객체화한다.
- Service에서 홍길동 계좌 금액은 0, 장보고 계좌금액은 6000원으로 변경
- 로직은 요청분기한 Controller에 돌아온다.
(이 때, 트랜잭션을 종료 시키는데 영속성 컨텍스트의 값이 변경을 감지하여 영속성컨텍스트는 DB에 flash해서 변경된 값을 넣어주고 DB연결 세션을 종료한다.+영속성 컨텍스트 종료된다. ) - Controller는 요청을 8번에서 수행 후 Data(Json) or html로 response 해준다.
'강의 따라하기 > blog' 카테고리의 다른 글
49. 시큐리티 시작전 요청 주소 변경 (0) | 2024.01.03 |
---|---|
48. 전통적인 방식의 로그인 방법 (0) | 2024.01.03 |
43.44. 45 DB 격리수준 READ COMMIT & 정합성 문제 & REPEACTABLE READ (1) | 2024.01.02 |
42. ResponseDto 수정 (0) | 2024.01.02 |
41. 회원가입 하기 두번째 완료 (0) | 2024.01.02 |
블로그의 정보
Hello 춘기's world
볼빵빵오춘기