libro
www.tuyano.com
初心者のためのApache Maven入門

データベースの利用 (4/6)

作成:2017-10-14 15:18
更新:2017-10-14 15:18

■persistence.xmlを用意する

では、JPAを利用するための準備を整えましょう。JPAを使う場合、persistence.xmlというファイルを用意する必要があります。これは、JPAで利用するパーシスタンス・ユニットを定義するものです。

「main」フォルダ内に、「resources」フォルダを作成して下さい。これは先ほど触れたように、リソースフォルダとして登録したものです。このフォルダの中に「META-INF」というフォルダを作成します。そしてその中に「persistence.xml」という名前でファイルを用意しましょう。

下のリスト欄に、persistence.xmlのソースコードを掲載しておきます。persistence.xmlは、<persistence>タグ内に<persistence-unit>というタグを用意し、そこにパーシスタンス・ユニットの情報を記述します。ここでは以下のような情報がまとめられています。
ユニット名:sample-persistance
プロバイダ:org.eclipse.persistence.jpa.PersistenceProvider
エンティティクラス:com.tuyano.libro.MyEntity
プロパティ:
 javax.persistence.jdbc.driver(ドライバクラス):org.h2.Driver
 javax.persistence.jdbc.url(データベースのURL):jdbc:h2:mem:db
 javax.persistence.jdbc.user(ユーザー名):sa
 eclipselink.ddl-generation(Eclipse Linkの設定):drop-and-create-tables
 eclipselink.ddl-generation.output-mode(Eclipse Linkの設定):database

これらは、最後の2つ(Eclipse Linkの設定)以外は、JPAを利用する際にたいていは必要となる情報です。中でも、最初にあるユニット名、プロバイダクラス、エンティティクラスの3つは必須項目で必ず用意します。

<properties>タグ内にあるプロパティの値は、使用するデータベースによって変わります。が、ドライバとURL、ユーザ名はまずたいていのデータベースで必要となるでしょう。H2以外のデータベースでの設定についてはここでは触れません。別途学習して下さい。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" 
    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_1.xsd">

    <persistence-unit name="sample-persistance" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>com.tuyano.libro.MyEntity</class>
        <properties>
            <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
            <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:db" />
            <property name="javax.persistence.jdbc.user" value="sa" />
            <property name="eclipselink.ddl-generation" value="drop-and-create-tables" />
            <property name="eclipselink.ddl-generation.output-mode" value="database" />
        </properties>
    </persistence-unit>
</persistence>
※関連コンテンツ

「初心者のためのApache Maven入門」に戻る