Detached Status
준영속 상태
준영속 상태
영속 상태의 엔티티가 영속성 컨텍스트에서 분리(detached)
영속성 컨텍스트가 제공하는 기능을 사용 못함
영속 상태가 되는 2가지 방법 1차 캐시에 있는 상태를 영속 상태라고 할 수 있다.
em.persist(entity)
em.find(Member.class,id) : 데이터를 조회할 때 1차 캐시에 없는 경우 DB에서 조회해서 1차 캐시에 저장한다!
준영속 상태로 만드는 방법
em.detach(entity) : 특정 엔티티만 준영속 상태로 전환
em.clear() : 영속성 컨텍스트를 완전히 초기화 em.clear() 이전과 이후에 동일한 엔티티를 조회하면 1차 캐시가 두 삭제 되기 때문에 쿼리가 한번 더 나간다! 테스트케이스 작성 시에 사용하기도 한다.
em.close() : 영속성 컨텍스트를 종료
Last updated