본문 바로가기
반응형

영속성2

[JPA] : JPA 영속성 컨텍스트(2) 영속성 컨텍스트의 이점은 동일성을 보장하고 트랜잭션을 지원하는 쓰기 지연과 변경 감지, 지연 로딩이다. Member member1 = em.find(Member.class, "member1"); Member member2 = em.find(Member.class, "member2"); 동일성을 비교했을 때 true가 나온다 1차 캐시로 반복 가능한 읽기 등급의 트랜적션 격리 수준을 데이터베이스가 아닌 애플리케이션 차원에서 제공한다. transaction.begin(); em.persist(member1); em.persist(member2); transaction.commit(); 트랜잭션을 시작하고 em.persist를 해도 INSERT SQL을 데이터베이스에 보내지 않는다. 마지막에 commit을 진.. 2022. 3. 22.
[JPA] : 영속성 컨텍스트(1) 영속성 컨텍스트는 JPA를 이해하는데 가장 중요한 용어로 “엔티티를 영구 저장하는 환경”이라는 뜻이다. EntityManager.persist(entity); 엔티티 매니저와 영속성 컨텍스트가 무엇일까? 영속성 컨텍스트는 논리적인 개념으로 눈에 보이지 않고 엔티티 매니저를 통해 영속성 컨텍스트에 접근하는 것이다. 엔티티 매니저가 생성하면 1:1로 영속성 컨텍스트가 생성이 된다. 즉, 엔티티 매니저 안에 눈에 보이지 않는 영속성 컨텍스트가 생기게 되는 것이라고 보면 된다. 엔티티의 생명주기도 알아두면 좋은데 비영속, 영속, 준영속, 삭제가 있다. 비영속은 new 상태라고 하고 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태이다. 영속은 Managed 상태로 영속성 컨텍스트에 관리되는 상태이다. 준영속은 d.. 2022. 3. 21.
반응형