본문 바로가기

개발 공부

JPA의 영속성 컨텍스트란?

영속성 컨텍스트란 엔티티를 영구 저장하는 환경이라는 뜻이다.

어플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다.

엔티티 매니저를 톷해 엔티티를 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리한다.

 

왜 영속성 컨텍스트가 등장하였는가 장점은 무엇인가.

우리가 데이터베이스에서 정보를 하나 꺼내올때, 계속 데이터베이스에 요청을 하게된다면 부하가 많이 걸리고, 속도에 영향을 줄 수도 있다.

해서 우리는 가상의 데이터 베이스(영속성 컨텍스트)에 정보를 저장해놓고 API요청을 처리할때 일일히 데이터베이스를 거치지 않고, 영속성 컨텍스트에서 정보를 빼오게 된다.

 

영속성 컨텍스트의 특징으로는

엔티티 매니저를 생성할 때 하나 만들어 진다.

엔티티 매니저를 통해서 영속성 컨텍스트에 접근하고 관리할 수 있다.