Free Lines Arrow
본문 바로가기
DataBase/JPA

[JPA] JPA 환경설정

by skahn1215 2021. 7. 29.
728x90
반응형

JPA 시작

jpa를 시작해보자

 

 

 

 

프로젝트 시작하기

 

 

H2 설치

버전은 1.4.199 로 맞춰 다운

 

http://www.h2database.com/html/download.html

 

Downloads

Downloads Version 1.4.200 (2019-10-14) Windows Installer (SHA1 checksum: 12710a463318cf23c0e0e3f7d58a0f232bd39cfe) Platform-Independent Zip (SHA1 checksum: 5898966bbca0b29ee02602fb84e0eb90ec92eec2) Version 1.4.199 (2019-03-13), Last Stable Windows Installe

www.h2database.com

 

 

 

메이븐 설정

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>jpa-basic</groupId>
    <artifactId>ex1-hello-jpa</artifactId>
    <version>1.0.0</version>

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
    </properties>


    <dependencies>

        <!-- JPA 하이버네이트 -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>5.3.10.Final</version>
        </dependency>

        <!-- H2 데이터베이스 -->
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.199</version>
        </dependency>


        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.0</version>
        </dependency>

    </dependencies>

</project>

 

 

 

 

 

persistence 설정

resources 에 다음과 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="org.h2.Driver"/>
            <property name="javax.persistence.jdbc.user" value="sa"/>
            <property name="javax.persistence.jdbc.password" value=""/>
            <property name="javax.persistence.jdbc.url" value="jdbc:h2:tcp://localhost/~/test"/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>

            <!-- 옵션 -->
            <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>

 

 

 

Dialect 란?

  • JPA는 DB에 종속적이지 않다 즉 어떤 DB든 사용할수 있다.
  • Dialect를 통해서 특정 DB를 사용할수 있다.
  • Hibernate 는 40가지 이상의 DB를 지원한다.

 

 

설정 방법 및 정보

H2 : org.hibernate.dialect.H2Dialect 
Oracle 10g : org.hibernate.dialect.Oracle10gDialect 
MySQL : org.hibernate.dialect.MySQL5InnoDBDialect

 

 

 

 

 

 

 

 

참고:

https://www.inflearn.com/course/ORM-JPA-Basic/lecture/21685?speed=1&tab=curriculum&mm=close 

 

자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

 

728x90
반응형

'DataBase > JPA' 카테고리의 다른 글

[JPA] 영속성 컨텍스트  (0) 2021.07.30
[JPA] JPA CRUD 기본  (0) 2021.07.30
[JPA] JPA 란?  (0) 2021.07.28
[JPA] JPA를 사용하는 이유  (0) 2021.07.27
[JPA] JPA를 배워야 하는이유  (0) 2021.07.27

댓글