[JPA] EntityManager 정리
·
JPA
JPA 를 사용하면서, 엔티티 매니저에 대한 개념이 부족한 것 같아, 관련 개념들을 정리한 글이다.EntityManagerFactory엔티티 매니저 팩토리는 엔티티 매니저를 만드는 팩토리로 여러 스레드가 동시에 접근해도 안전하게 사용할 수 있도록 설계되었다. 따라서, 엔티티 매니저 팩토리를 여러 군데에서 @PersistenceUnit 으로 주입 받아도 인스턴스 객체는 항상 같다. EntityManagerFactory 를 인스턴스화 할 때 생성비용이 크기 때문에 한개만 만들어 애플리케이션 전체에서 공유한다. 생성 비용이 크다는 것은 EntityManagerFactory 를 인스턴스화할 때 여러 가지 초기화 작업이 많이 필요하다는 것을 의미한다. 아래와 같은 초기화 작업이 이루어지며, 리소스와 시간이 많이 ..