흔히 JPA를 사용할때 JPA의 기본 내부 구조도 모른체 그냥 JpaResository를 상속받아 "findById()", "save()" 와 같은 메서드를 사용하곤 한다. 나도 그래왔고.. 그래서 JPA의 근간이 되는 EntityManager에 대해 알아보기로 했다. 저자 김영한의 자바 ORM 표준 JPA 프로그래밍을 참고했다.
JPA 기능을 기본적으로 엔티티와 테이블의 매핑, 설계 부분과 매칭한 엔티티를 사용하는 부분으로 나눈다. 여기서 jpa 의 근간이 되는 EntityManager는 엔티티를 사용하는 부분에 해당한다. EntityManager는 말그대로 엔티티를 관리하는 관리자다. EntityManagerFactory에서 EntityManager를 생성하고 그때 영속성 컨텍스트도 함께 만들어진다.
공장은 생성하는데는 비용이 상당히 크기때문에 어플리케이션 전체에 하나만 사용할 수 있도록 설계되어있다. 반면에 공장에서 매니저를 생성하는 비용은 거의 들지 않는다. 공장과 관리자를 생성하는 코드는 추후에 다루도록 하겠다.
🐲 영속성 관리(2) - 연속성 컨텍스트(Persistence Context)
🫠영속성 관리(5) - 엔티티 조회와 동일성 보장 (0) | 2022.05.29 |
---|---|
영속성 관리(4) - 엔티티 조회와 1차캐시 (0) | 2022.05.26 |
🤑영속성 관리(3) - 영속성 컨텍스트의 특징 (0) | 2022.05.14 |
🐲 영속성 관리(2) - 연속성 컨텍스트(Persistence Context) (0) | 2022.05.13 |
댓글 영역