본문 바로가기
Data Base/JPA

[JPA] : 준영속 상태

by 오주현 2022. 3. 23.
반응형
  • 지금은 어렵다. 나중에 실전에서 웹 애플리케이션을 만들 때 배우는 게 더 좋다. 추후에 다시 다룬다.
  • 영속에서 준영속으로 가는 게 em.persist(member); 이렇게 사용하거나 em.find(member)로 가져올 수 있다.
  • 영속 상태의 엔티티가 영속성 컨텍스트에서 detached 되는 것 즉, 다 떼어 버리는 것이다
    • 영속에서 준영속으로 빠진 상태를 준영속 상태라고 하는 것이다.
  • //영속 Member member = em.find(Member.class, 150L); // member는 영속 상태이다. member.setName("AAAA"); //데이터 변경 em.detach(member); //영속성 컨텍스트에서 관리하지 마! 해버린 것이다. 영속성에서 빠지게 된다. System.out.println("======================"); tx.commit();
  • 준영속 상태로 만드는 방법
    • em.detach()를 사용한다.
      • 특정 엔티티만 준영속 상태로 전환한다.
    • em.clear()를 사용한다.
      • 영속성 컨텍스트를 완전히 초기화한다.
    • em.close()를 사용한다.
      • 영속성 컨텍스트를 종료한다.
    참고
  • 컨텍스트는 엔티티를 영구 저장하는 환경이라는 뜻이다.
  • 영속성 컨텍스트는 논리적인 개념이라 엔티티 매니저를 생성해서 사용한다.

자바 ORM 표준 JPA 프로그래밍 - 기본편을 참고하여 공부하였습니다.

반응형

댓글