[JPA] 영속성 컨텍스트
코딩/JPA
2023. 7. 17. 18:59
서론 JPA에서 가장 중요한 개념 중 하나가 영속성 컨텍스트이다. 영속성 컨텍스트를 학습하면서 JPA의 내부 동작 방식을 이해하며, JPA의 장점(영속성 컨텍스트 이점) 또한도 정리해보고자 한다. 영속성 컨텍스트란? "엔티티를 영구 저장하는 환경" 이라는 뜻으로 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다. 엔티티 매니저를 통해 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리한다. 위의 그림과 같이 EntityManager Factory가 고객에 요청마다 EntityManager을 생성한다. 이 EntityManager은 DB Connection을 사용하여 DB를 사용한다 em.persist(entity) //entity을 영속성 ..