김영한님이 지음, [자바 ORM 표준 JPA 프로그래밍] 책을 읽고 정리한 필기입니다.📢

엔티티 매니저 팩토리 & 엔티티 매니저

엔티티 매니저 팩토리와 엔티티 매니저의 차이점

  • 엔티티 매니저 팩토리

    • 생성 비용이 큼
    • 여러 스레드 동시 접근에 안전
  • 엔티티 매니저

    • 생성 비용 거의 없음
    • 여러 스레드 동시 접근 시 동시성 문제 발생, 스레드간 공유 절대 금지

    img-name
    일반적인 웹 어플리케이션의 구조

  • EntityManagerFactory에서 다수의 엔티티 매니저를 생성
  • 엔티티 매니저는 데이터베이스 연결이 꼭 필요한 시점까지 커넥션을 얻지 않음(EntityManager1)
  • 보통 트랜잭션을 시작할 때 커넥션을 획득(EntityManager2)
  • JPA 구현체들은 EntityManagerFactory를 생성할 때 커넥션품도 만듦(J2SE환경)
    • JPA를 J2EE환경(스프링 프레임워크 포함)에서 사용하면 해당 컨테이너가 제공하는 데이터소스를 사용

JPA 카테고리 내 다른 글 보러가기

댓글남기기