12.2. 간단한 JPA 애플리케이션 생성
아래 절차에 따라 Red Hat CodeReady Studio에서 간단한 JPA 애플리케이션을 만듭니다.
절차
Red Hat CodeReady Studio에서 JPA 프로젝트를 만듭니다.
Red Hat CodeReady Studio에서 파일 → 새 → 프로젝트를 클릭합니다. 목록에서 JPA 를 찾아 확장한 다음 JPA 프로젝트를 선택합니다. 다음 대화 상자가 표시됩니다.
그림 12.1. 새 JPA 프로젝트 대화 상자

- 프로젝트 이름을 입력합니다.
대상 런타임 을 선택합니다. 대상 런타임을 사용할 수 없는 경우 다음 지침에 따라 새 서버 및 런타임을 정의합니다. CodeReady Studio Tools 가이드 의 IDE 내에서 JBoss EAP 다운로드, 설치 및 설정.
참고Red Hat CodeReady Studio에서 Target 런타임 을 7.4 또는 이후 런타임 버전으로 설정하면 프로젝트가 Jakarta EE 8 사양과 호환됩니다.
- JPA 버전에서 2.1 이 선택되었는지 확인합니다.
- Configuration(구성) 에서 Basic JPA Configuration(기본 JPA 구성)을 선택합니다.
- 완료를 클릭합니다.
- 메시지가 표시되면 이 프로젝트 유형과 JPA 관점 창을 연결할지 여부를 선택합니다.
새 지속성 설정 파일을 만들고 구성합니다.
- Red Hat CodeReady Studio에서 EJB 3.x 프로젝트를 엽니다.
- Project Explorer 패널에서 프로젝트 루트 디렉터리를 마우스 오른쪽 버튼으로 클릭합니다.
- 새 → 기타...를 선택합니다..
- XML 폴더에서 XML File 을 선택하고 Next (다음)를 클릭합니다.
-
ejbModule/META-INF/폴더를 상위 디렉터리로 선택합니다. -
파일 이름을
persistence.xml로 지정하고 Next 를 클릭합니다. - XML 스키마 파일에서 Create XML file을 선택하고 Next (다음)를 클릭합니다.
Select XML Catalog(XML 카탈로그 선택) 항목 목록에서
http://java.sun.com/xml/ns/persistence/persistence_2.0.xsd를 선택하고 Next (다음)를 클릭합니다.그림 12.2. 지속성 XML 스키마

Finish( 완료 )를 클릭하여 파일을 만듭니다.
persistence.xml은META-INF/폴더에 생성되었으며 구성할 준비가 되었습니다.예제: 지속성 설정 파일
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_2.xsd" version="2.2"> <persistence-unit name="example" transaction-type="JTA"> <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> <jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source> <mapping-file>ormap.xml</mapping-file> <jar-file>TestApp.jar</jar-file> <class>org.test.Test</class> <shared-cache-mode>NONE</shared-cache-mode> <validation-mode>CALLBACK</validation-mode> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/> <property name="hibernate.hbm2ddl.auto" value="create-drop"/> </properties> </persistence-unit> </persistence>