-
5. 스프링부트 퀵 스타트IT 서적/스프링부트 퀵 스타트 2023. 10. 22. 16:47
JPA의 API 이해 : EntityManagerFactory와 EntityManager
EntityManager 객체
- JPA를 이용하여 CRUD 기능을 처리하려면 EntityManager 객체를 사용해야한다.
- 이 EntityManager는 EntityManagerFactory로부터 얻을 수 있다.
- 다음 그림은 EntityManager 객체를 얻기까지의 과정이다.
- Persistence 객체를 이용하여 persistence.xml에 명시된 JPA 메인 환경설정에 대한 정보를 가져온다.
- 영속성 유닛 설정 정보를 바탕으로 EntityManagerFactory 객체를 생성한다.
EntityManagerFactory로부터 EntityManager를 얻어서 데이터베이스 연동을 처리한다. - 다음은 EntityManager가 제공하는 CRUD 기능의 메소드다.
JPA를 이용한 CRUD
- 영속성 컨텍스트의 데이터 저장 과정
- 위와같은 구조를 가짐으로써 한 번의 데이터베이스 통신으로 SQL 구문을 한꺼번에 처리할 수 있고 결과적으로 성능을 최적화할 수 있다.
스냅샷이란?
- JPA는 검색된 엔티티를 영속성 컨텍스트에 저장할 때, 엔티티의 복사본을 만들어서 별도의 컬렉션에 저장하는데 이 저장 공간을 스냅샷이라고 한다.
목록검색과 JPQL
- JPA를 활용하여 목록을 조회하기 위해서는 JPQL(Java Persistence Query Language)이라는 것을 활용해야한다.
- JPQL은 SQL과 거의 유사한 문법을 사용하므로 해석하는데 특별한 어려움은 없지만 검색 대상이 테이블이 아니라 엔티티라는 점이 중요하다.
'IT 서적 > 스프링부트 퀵 스타트' 카테고리의 다른 글
6. 스프링부트 퀵 스타트 (0) 2023.10.22 4. 스프링부트 퀵 스타트 (0) 2023.10.22 3. 스프링부트 퀵 스타트 (0) 2023.10.22 2. 스프링부트 퀵 스타트 (0) 2023.10.22 1. 스프링부트 퀵 스타트 (0) 2023.10.22