[JPA] Spring Boot JPA 핵심 개념 - 영속성 컨텍스트와 엔티티 생명주기
[JPA] Spring Boot JPA 핵심 개념 - 영속성 컨텍스트와 엔티티 생명주기
[JPA] JPA란 무엇인가? Java Persistence API의 핵심 개념 정리 - 2 [JPA] JPA란 무엇인가? Java Persistence API의 핵심 개념 정리 - 2[JPA] JPA란 무엇인가? Java Persistence API의 핵심 개념 정리 [JPA] JPA란 무엇인가? Java P
crushed-taro.tistory.com
1. Persistence Context
1. Entity Manager Life Cycle Tests
public class A_EntityManagerLifeCycleTests {
private static EntityManagerFactory entityManagerFactory;
private EntityManager entityManager;
@BeforeAll
public static void initFactory() {
entityManagerFactory = Persistence.createEntityManagerFactory("jpatest");
}
@BeforeEach
public void initManager() {
entityManager = entityManagerFactory.createEntityManager();
}
@AfterAll
public static void closeFactory() {
entityManagerFactory.close();
}
@AfterEach
public void closeManager() {
entityManager.close();
}
}
테스트를 2번 실행하며 EntityManagerFactory와 EntityManager의 해시코드를 출력해 라이프 사이클을 확인한다.
@Test
public void 엔터티_매니저_팩토리와_엔터티_매니저_생명주기_확인1() {
System.out.println("entityManagerFactory.hashCode : " + entityManagerFactory.hashCode());
System.out.println("entityManager.hashCode : " + entityManager.hashCode());
}
@Test
public void 엔터티_매니저_팩토리와_엔터티_매니저_생명주기_확인2() {
System.out.println("entityManagerFactory.hashCode : " + entityManagerFactory.hashCode());
System.out.println("entityManager.hashCode : " + entityManager.hashCode());
}
실행결과
entityManagerFactory.hashCode : 1135936028
entityManager.hashCode : 247334525
entityManagerFactory.hashCode : 1135936028
entityManager.hashCode : 1829344035
EntityManagerFactory는 같은 해시코드가 출력되는 것을 통해 하나의 객체로 처리되고 있고, EntityManager는 다른 해시코드가 출력 되는 것을 통해 매 요청마다 새로운 객체가 생성되고 있음을 확인할 수 있다.
'Java > Spring JPA' 카테고리의 다른 글
| [JPA] Spring Boot JPA 핵심 개념 - 영속성 컨텍스트와 엔티티 생명주기 (0) | 2026.07.09 |
|---|---|
| [JPA] JPA란 무엇인가? Java Persistence API의 핵심 개념 정리 - 2 (0) | 2026.07.06 |
| [JPA] JPA란 무엇인가? Java Persistence API의 핵심 개념 정리 (0) | 2026.07.01 |




