영속성 관리 - 내부 동작 방식

rooni97·2022년 3월 30일
0

영속성 컨텍스트

  • 엔티티를 영구 저장하는 환경
  • 비영속, 영속, 준영속, 삭제
  • 트랜잭션 내 1차 캐시/동일성 제공, 쓰기지연, 변경감지
  • em. + persist, find

플러시

  • 영속성 컨텍스트의 변경내용을 DB에 반영 -> em.flush
  • DB에 쿼리가 날라가는 과정
  • FlushModeType.AUTO 기본값으로 커밋/쿼리 실행 시 플러시 발생
  • 영속성 컨텍스트를 비우는 것이 아니라 변경내용을 DB에 동기화하며 트랜잭션 작업 단위 안에서 커밋 직전에만 동기화시키면 됨.

준영속

  • 영속성 컨텍스트에서 분리 -> 영속성 컨텍스트의 기능 사용 불가
  • em. + detach(분리), clear(통으로 초기화), close(종료)

0개의 댓글