[JPA] JPA 프로젝트 설정

PURPLE·2022년 3월 19일
2

JPA

목록 보기
4/8

프로젝트에서 JPA를 사용하기 위해 추가해야할 설정을 간단히 알아보자.

dependency 추가

pom.xml 파일에 아래 dependency를 추가.

<!--JPA Hibernate-->
 <dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-entitymanager</artifactId>
   <version>5.6.5.Final</version>
</dependency>

persistence.xml

/META_INF 디렉토리 아래에 생성.

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" version="2.2">

	<!-- DB당 하나의 name을 가진다. 
    프로젝트 최초 로딩시 EntityManagerFactory를 생성할때 이 name으로 설정 파일을 읽는다. -->
    <persistence-unit name="jpa_dev"> 
        <properties>

            <!-- 필수 속성 -->
            <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/> <!-- 사용할 DB 드라이버 -->
            <property name="javax.persistence.jdbc.user" value="name"/> <!-- DB 접속 ID -->
            <property name="javax.persistence.jdbc.password" value=""/> <!-- DB 접속 PW -->
            <property name="javax.persistence.jdbc.url" value="jdbc:h2:tcp://localhost/~/test"/> <!-- DB 접속 url -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" /> <!-- DB 방언 -->

            <!-- 옵션 -->
            <property name="hibernate.show_sql" value="true" /> <!--console에 쿼리 실행문 보여줌-->
            <property name="hibernate.format_sql" value="true" /> <!--쿼리 포맷-->
            <property name="hibernate.use_sql_comments" value="true" /> <!--쿼리주석 보여줌-->
            <property name="hibernate.jdbc.batch_size" value="10" /> <!-- 설정한 사이즈 만큼 sql을 모아서 DB에 전송 -->
        </properties>
    </persistence-unit>

</persistence>

hibernate.dialect 설정은 매우 유용한 JPA 기능이다.
세상의 거의 모든 데이터베이스 SQL문을 JPA 표준으로 매핑해놓아서, 사용할 데이터베이스의 방언을 설정해주면 쿼리문이 해당 SQL의 문법으로 마법처럼 작성된다. ✨


참고

자바 ORM 표준 JPA 프로그래밍 - 기본편
자바 ORM 표준 JPA 프로그래밍(김영한)

다정한 피드백 환영해요 🤗

profile
방향과 방법을 찾아가는 여정

0개의 댓글