♻ 엔티티의 생명주기

엔티티에는 4가지 상태가 존재한다.

상태 설명
비영속(new/transient) 영속성 컨텍스트와 전혀 관계가 없는 상태
영속(managed) 영속성 컨텍스트에 저장된 상태
준영속(detached) 영속성 컨텍스트에 저장되었다가 분리된 상태
삭제(removed) 삭제된 상태

엔티티 생명주기

//객체를 생성한 상태(비영속)Member member = new Member();member.setId("member1");member.setUsername("회원1");

비영속 상태

//객체를 저장한 상태(영속)em.persist(member);

영속 상태

//회원 엔티티를 영속성 컨텍스트에서 분리, 준영속 상태em.detach(member);
//객체를 삭제한 상태(삭제)em.remove(member);