SMALL
JPA 구동 방식
설정 정보를 조회하고 Persistence 에서 EntityManagerFactory 를 생성하고 그 안에서 EntityManager 를 생성하게 된다.
코드
persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2"
xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">
<persistence-unit name="hello">
<properties>
<!-- 필수 속성 -->
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="javax.persistence.jdbc.user" value="root"/>
<property name="javax.persistence.jdbc.password" value="자신의 비밀번호"/>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/jpa_study"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL8Dialect"/>
<!-- 옵션 -->
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.use_sql_comments" value="true"/>
<!--<property name="hibernate.hbm2ddl.auto" value="create" />-->
</properties>
</persistence-unit>
</persistence>
위와 같이 나의 상황에 맞게 설정해둔다. 나는 H2 Database 를 깔지 않고 MySQL 로 사용하기로 하였다.
EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello");
위와 같은 구문으로 우리는 hello 라는 정보를 가져온거다. 처음 이미지에 있는 1번 설정 정보 조회와 EntityManagerFactory 생성하는 2번 부분이다.
자 이제 EntityManagerFactory 를 만들었으니 여러 EntityManager 를 생성할것이다.
@Test
void name() {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello");
EntityManager em = emf.createEntityManager();
//코드 작성
em.close();
emf.close();
}
이런식으로 EntityManager 를 계속 생성할 수 있다.
이후에 글에 더 자세한 내용을 덧붙여서 글을 써봐야겠다.
반응형
LIST
'Spring' 카테고리의 다른 글
JPA - Entity 매핑 (데이터베이스 스키마 자동 생성) (0) | 2024.01.04 |
---|---|
JPA - 영속성 컨텍스트 (1) | 2023.12.28 |
JPA - 기본 개념 (0) | 2023.12.27 |
@Conditional (0) | 2023.12.21 |
HikariCP (0) | 2023.08.17 |