<TIL> 155. SqlSessionTemplate

YUJIN LEE·2023년 10월 20일
0

개발log

목록 보기
146/149

SqlSessionTemplate

Mybatis를 사용할 때 SqlSessionTemplate 라는걸 사용한다.
여기서 ExecutorType 모드가 있다는걸 알게 되었는데
지금 알게된 세가지 방식을 정리해보고자 한다.

executorType.simple

  • 이 모드에서는 각 SQL 문이 실행될 때마다 DB 연결을 열고 실행.
  • 각 SQL 문이 개별적 실행되어 하나의 트랜잭션 내에서 여러 SQL 문을 실행할 때에도 각각의 SQL 문은 독립적인 트랜잭션으로 실행
  • 이 모드는 간단한 작업이나 간단한 쿼리를 처리할 때 사용될 수 있고, 트랜잭션 관리나 롤백에 있어 SQL 문 간에 영향을 주지 않음

executorType.batch

  • 이 모드에서는 Mybatis가 가능한 모든 SQL문을 배치(batch)로 묶어 데이터베이스에 한번에 전송.
    -> 네트워크 오버헤드가 감소하고 성능 향상 가능
  • 모든 SQL 문은 동일한 트랜잭션 내에서 실행 -> 롤백이나 커밋도 한꺼번에 처리.

executorType.reuse

  • 미리 컴파일된 SQL 문과 캐시된 세션을 재사용해 성능 향상시키는 방법
  • 성능이 중요한 시나리오에 사용

출처

profile
인정받는 개발자가 되고싶습니다.

0개의 댓글