본문 바로가기

JPA

플러시

플러시

  • 영속성 컨텍스트의 변경 내용을 데이터베이스에 반영
  • 영속성 컨텍스트를 비우지 않음
  • 변경내용을 데이터베이스에 동기화
  • 트랜잭션이라는 단위가 중요 -> 커밋 직전에만 동기화하면 됨

 

  1. 플러시 발생
    • 변경 감지(dirty checking)
    • 수정된 엔티티 쓰기지연 SQL 저장소로 등록
    • SQL 저장소의 쿼리를 데이터베이스로 전송
  2. 플러시 방법
    • em.flush() - 직접 호출
    • 트랜잭션 커밋 - 플러시 자동 호출
    • JPQL 쿼리 실행 - 플러시 자동 호출
  3. 플러시 옵션
    • FlushModeType.Auto : 커밋이나 쿼리를 실행할 때 플러시 (기본값)
    • FlushModeTYpe.COMMIT : 커밋할때만 플러시
    ​

 

 

 

**참고

인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 기본편(김영한)

'JPA' 카테고리의 다른 글

연관관계 매핑  (0) 2023.01.04
엔티티 매핑  (0) 2022.12.27
영속성 컨텍스트  (0) 2022.12.20
JPA 사용 이유  (0) 2022.10.19
JPA / 엔티티  (0) 2022.10.06