영속성 컨테스트
//영속성(1차 캐쉬에 저장됨)
em.persist(member);
비영속 (new/transient)
- 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태
- 영속 (managed) 영속성 컨텍스트에 관리되는 상태
//엔티티를 생성한 상태
Member member= new Member();
member.setId(“member1”);
Member.setusername(“회원1”);
준영속 (detached)
- 영속성 컨텍스트에 저장되었다가 분리된 상태
- 영속 -> 준영속
- 영속 상태의 엔티티가 영속성 컨텍스트에서 분리(detached)
- 영속성 컨텍스트가 제공하는 기능을 사용 못함- 준영속 상태로 만드는 방법
- em.detach(entity)
특정 엔티티만 준영속 상태로 전환
- em.clear()
영속성 컨텍스트를 완전히 초기화
- em.close()
* 영속성 컨텍스트를 종료
삭제 (removed)
- 삭제된 상태
플러쉬
- 영속성 컨테스트의 변경내용을 데이터베이스에 반영
- 영속성 컨텍스트를 비우지 않음
- 트랜잭션이라는 작업 단위가 중요 -> 커밋 직전에만 동기화 하면 됨