본문 바로가기
반응형

IT 개인 공부/JPA2

[JPA] 영속성 컨텍스트 영속성 컨텍스트란 엔티티를 영구 저장하는 환경이란 의미이다. JPA는 실제로 내부에서 영속성 컨텍스트를 기반으로 동작한다. 즉, 엔티티 매니저를 통해 엔티티를 Persist할 경우 DB에 저장되는 것이 아니라 영속성 컨텍스트라는 논리적인 저장소에 저장된다. 영속성 컨텍스트를 공부하기 전에 엔티티 매니저 팩토리와 엔티티 매니저에 대해서 간단하게 알고 넘어가자. JPA는 클라이언트의 요청을 엔티티 매니저를 통해 처리하고 내부적으로 DB Connction Pool을 사용해서 DB에 접근한다. 엔티티 매니저 팩토리는 바로 엔티티 매니저를 생성해주는 친구이다. 웹 애플리케이션에서는 엔티티 매니저 팩토리를 하나 생성하여 클라이언트의 요청이 올 때마다 새로운 엔티티 매니저를 생성하여 제공한다. 이는 스프링같은 프레임.. 2021. 8. 31.
JDBC vs SQL Mapper vs ORM 데이터를 단순히 메모리에 저장한다면 애플리케이션이 종료될 경우 모든 데이터가 사라지게 된다. 왜냐하면 메모리는 휘발성이기 때문에 데이터의 영속성을 보장해주지 않기 때문이다. 영속성(Persistence)이란 데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터의 특성을 의미한다. 따라서 애플리케이션이 종료되어도 데이터를 유지하기 위해서는 영속성을 보장해주는 데이터베이스 같은 저장소에 따로 저장 및 관리해야 한다. Layered Architecture의 Persistence Layer가 바로 데이터에게 영속성을 부여해주는 계층이다. Java는 Persistenc Layer를 JDBC(Java Database Connectivity)로 구현한다. JDBC를 통해 우리는 영속성이 보장되는 데이터베이스에.. 2021. 8. 29.
반응형