영속성 컨텍스트
-> 엔티티를 영구적으로 저장하는 환경
EntityManager.persist(entity);
- DB에 저장하는 것이 아니다!!
영속성 컨텍스트는
1) 논리적인 개념이고
2) 눈에 보이지 않는다.
3) EntityManager를 통해서 영속성 컨텍스트에 접근한다.
엔티티의 라이프 사이클
비영속(new/transient) : 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태
영속(managed) : 영속성 컨텍스트에 관리되는 상태
준영속(detached) : 영속성 컨텍스트에 저장되었다가 분리된 상태
삭제(remove) : 삭제된 상태
객체를 생성한 상태 = 비영속 상태
Member member = new Member();
영속화
em.persist(member);
영속성 상태의 장점
트랜잭션 커밋
데이터(엔티티)를 DB로 보내는 시점
데이터베이스로 insert문을 날리게 된다.
transaction.commit();