본문 바로가기

Spring/JPA

JPA persistence.xml과 라이브러리 설정

pom.xml

<!-- JPA를 위한 hibernate-entitymanager -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>5.4.9.Final</version>
        </dependency>

<!-- 연습용 데이터베이스 h2 -->
        <!-- https://mvnrepository.com/artifact/com.h2database/h2 -->
<!--        <dependency>-->
<!--            <groupId>com.h2database</groupId>-->
<!--            <artifactId>h2</artifactId>-->
<!--            <version>1.4.200</version>-->
<!--            <scope>test</scope>-->
<!--        </dependency>-->

연습용 데이터베이스 h2 라이브러리 불러오기를 계속 실패해서 그냥 직접 불러다 쓰기러 했다. h2 폴더에 jar파일 있었고, 그걸 가져와서 쓰기로 했음!

File- Project Structure 여기에 Libraries를 관리할 수 있는 탭이 있다.

라이브러리에 hibernate-core 들어오게 된다.

persistence.xml

resources > META-INF > persistence.xml로 관리

<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" version="2.2">
    <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.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/>
						<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>
            -->
						<!-- 옵션 -->
            <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.id.new_generator_mappings" value="true"/>-->

            <property name="hibernate.hbm2ddl.auto" value="create" />
            <!--
            create: 기존테이블 삭제 후 다시 생성 (DROP+CREATE)- 운영DB xx, 웬만하면 개발도 xx
            create-drop: create와 같으나 종료시점에 테이블 drop - 운영DB xx, 웬만하면 개발도 xx
            update: 변경분만 반영 - 운영DB xx, 웬만하면 개발도 xx
            validate: 엔티티와 테이블이 정상 매핑되었는지만 확인
            none: 사용하지 않음
            local에서 사용하기에 좋겠다.
            -->
        </properties>
    </persistence-unit>
</persistence>

해당 포스팅은 T아카데미에서 진행한 김영한 강사님의 JPA 유튜브 강의를 듣고 정리한 것입니다 : ) https://www.youtube.com/watch?v=WfrSN9Z7MiA&list=PL9mhQYIlKEhfpMVndI23RwWTL9-VL-B7U

반응형

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

JPA 연관관계 매핑-단방향 매핑  (0) 2021.04.11
JPA 필드와 칼럼 매핑  (0) 2021.04.11
JPA 기초와 매핑 : 실습  (0) 2021.04.11
JPA 기초와 매핑  (0) 2021.04.11
JPA에 대해서  (0) 2021.04.11