728x90
반응형

em.persist 2

변경 감지(Dirty Checking)

✅ 영속성 컨텍스트란 ‘엔티티를 영구히 저장하는 환경’이라는 뜻 EntityManager.persist(entity); 하지만 이는 논리적인 개념이다. 엔티티 매니저를 통해서 영속성 컨텍스트에 접근할 수 있다. 아래의 예를 통해 영속성 컨텍스트 내에서 변경 감지(Dirty Checking)를 하는 법을 알아보자. ✅ 엔티티 수정 EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); // 단일 EntityManger를 생성한다. EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); // 트랜잭션 시작한다. (영속성 컨텍..

Dev/Spring 2023.11.20

영속성 컨텍스트란

Overview JPA의 '영속성 컨텍스트'라는 논리적인 개념에 대해 다룬다. JPA의 2요소 JPA에서 가장 중요한 2가지라 하면, 객체와 RDBMS를 매핑하는 연관관계 영속성 컨텍스트 이 두가지가 있다. 웹 어플리케이션에서 사용자는 EntityManager를 할당받고, Database에 접근하기 위해 EntityManager로 엔티티를 영속성 컨텍스트에 집어 넣는다. 즉, 영속성 컨텍스트는 엔티티를 영구 저장하는 환경이라는 뜻이다. 일반적으로 EntityManager.persist(entity);구문을 통해 엔티티는 영속성 컨텍스트에 들어간다. 엔티티의 생명주기 비영속 영속성 컨텍스트와 연관이 없는 상태. 그저 생성만 된 객체를 의미한다. 영속 영속성 컨텍스트가 관리하는 객체 준영속 영..

Dev/Spring 2023.11.20
728x90
반응형