パーシスタント・フィールドを持つ Java パーシスタント・エンティティーの作成

このクイック・スタートでは、新規パーシスタント Java エンティティーの作成方法を示します。エンティティーを作成して、データベース・テーブルに関連付けます。また、ご使用のデータベースに ADDRESS テーブルを追加する必要があります。

  1. ナビゲーターまたはプロジェクト・エクスプローラーで JPA プロジェクトを 選択して、「新規」>「その他」をクリックします。「ウィザードを選択」ダイアログが表示されます。

  2. 「JPA」>「エンティティー」を選択して、「次へ」をクリックします。「エンティティー・クラス」ページが表示されます。

  3. パッケージ名 (quickstart.demo.model など) およびクラス名 (Address など) を入力し、「次へ」をクリックします。「エンティティー・プロパティー」ページが表示され、データベース・テーブルの列へマップするパーシスタンス・フィールドを定義することができます。

  4. 「エンティティー・フィールド」ダイアログ (「追加」をクリックして呼び出す) を使用して、Address クラスにパーシスタンス・フィールドを追加します。

    private Long id;
    private String city;
    private String country;
    private String stateOrProvince;
    private String postalCode;
    private String street;
    
    

    注:

    また、ADDRESS データベース・テーブルに以下の列を追加する必要があります。
    NUMBER(10,0) ADDRESS_ID (primary key)
    VARCHAR2(80) PROVINCE
    VARCHAR2(80) COUNTRY
    VARCHAR2(20) P_CODE
    VARCHAR2(80) STREET
    VARCHAR2(80) CITY
    

  5. 終了」をクリックします。「JPA エンティティーの作成」が完了すると、Eclipse は「JPA の構造」ビューに Address エンティティーを表示します。

    Address.java には、@Entity アノテーションおよびパーシスタンス・フィールドが含まれており、さらに各フィールド用に getter メソッドおよび setter メソッドが含まれています。

Address.java の Address エンティティー

Address エンティティーのある Java エディター

また、「JPA の構造」ビューに Address エンティティーが以下のように表示されます。

「JPA の構造」ビューの Address エンティティー

「JPA の構造」ビューの Address.java
  1. 「プロジェクト・エクスプローラー」ビューで Address クラスを選択します。

  2. JPA の詳細」ビューでは、ADDRESS データベース・テーブルとエンティティーは名前が同一であるため、Dali によって自動的に関連付けられています。


    注:

    データベース接続タイプによっては、スキーマの指定が必要な場合があります。

    Address エンティティーの「JPA の詳細」ビュー

    「JPA の詳細」ビューの Address.java

ヒント:

エンティティーとデータベース・テーブルを関連付けた後、persistence.xml ファイルを更新して、 この JPA エンティティーを組み込む必要があります。

「プロジェクト・エクスプローラー」の persistence.xml ファイルを右クリックして、「JPA ツール」>「クラス・リストの同期化」を選択します。Dali によって、persistence.xml ファイルに以下の行が追加されます。

<class>quickstart.demo.model.Address</class>


これで、Address クラスの各フィールドをデータベース・テーブルの列にマップする準備ができました。

  1. 「JPA の詳細」ビューで id フィールドを選択します。

  2. 「ID」を右クリックして、「次としてマップ」 >「ID」を選択します。

  3. 「JPA の詳細」ビューの「名前」フィールドで、ADDRESS_ID を選択します。

    addressId フィールドの「JPA の詳細」ビュー

    Address エンティティーの ID 属性の「JPA の詳細」ビュー

    Eclipse により、以下の注釈が Address エンティティーに追加されます。

    @Id
    @Column(name="ADDRESS_ID")
    
    
  4. 以下のように、フィールドを (基本マッピングとして) それぞれ該当のデータベース列にマップします。

    フィールド 次としてマップ データベース列
    city 基本 CITY
    country 基本 COUNTRY
    postalCode 基本 P_CODE
    provinceOrState 基本 PROVINCE
    street 基本 STREET

Dali では、名前が同一の場合、フィールドは自動的に適切なデータベース列に (例えば、city フィールドは City 列に) マップされます。