このチュートリアルでは、以前のリンク://hibernate/maven-3-hibernate-3-6-oracle-11g-example-xml-mapping/[Hibernate3.6 XMLマッピングチュートリアル]を再利用して変更しますが、Hibernateマッピングファイルhbm)をHibernate/JPA注釈コードで置き換えます。

この記事の技術:

  1. Maven 3.0.3

  2. JDK 1.6.0__13

  3. Hibernate 3.6.3.final

  4. Oracle 11g

1. pom.xml

`pom.xml`ファイルに変更はありません。以前のすべてのリンク://hibernate/maven-3-hibernate-3-6-oracle-11g-example-xml-mapping/[Hibernate3.6 XMLマッピングチュートリアル]依存関係は再利用できます。

2. Hibernate Mappingファイル(hbm)を削除する

“` DBUser.hbm.xml` “ファイルを削除すると、もはや必要ありません。

3.モデルを更新する

Update “DBUser.java`”はJPA注釈コードを内部に置きます。


File:DBUser.java

package com.mkyong.user;

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name = "DBUSER")
public class DBUser implements java.io.Serializable {

    private int userId;
    private String username;
    private String createdBy;
    private Date createdDate;

    public DBUser() {
    }

    public DBUser(int userId, String username, String createdBy,
            Date createdDate) {
        this.userId = userId;
        this.username = username;
        this.createdBy = createdBy;
        this.createdDate = createdDate;
    }

    @Id
    @Column(name = "USER__ID", unique = true, nullable = false, precision = 5, scale = 0)
    public int getUserId() {
        return this.userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    @Column(name = "USERNAME", nullable = false, length = 20)
    public String getUsername() {
        return this.username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    @Column(name = "CREATED__BY", nullable = false, length = 20)
    public String getCreatedBy() {
        return this.createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    @Temporal(TemporalType.DATE)
    @Column(name = "CREATED__DATE", nullable = false, length = 7)
    public Date getCreatedDate() {
        return this.createdDate;
    }

    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }

}

4. Hibernate設定ファイルを更新する

hibernate.cfg.xml “を更新し、”

マッピングリソース

“を”

マッピングクラス

“に置き換えます


これからhibernate.cfg.xmlを更新する:

<hibernate-configuration>
  <session-factory>
    <!-- ..... -->
    <mapping resource="com/mkyong/user/DBUser.hbm.xml"></mapping>
  </session-factory>
</hibernate-configuration>


これに:

<hibernate-configuration>
  <session-factory>
    <!-- ..... -->
    <mapping class="com.mkyong.user.DBUser"></mapping>
  </session-factory>
</hibernate-configuration>

5. Hibernateユーティリティ

Hibernate 3.6以来、 “HibernateUtil.java”を更新していないので、XMLマッピングとアノテーションの両方が同じ ”

org.hibernate.cfg.Configuration

“クラスを共有しています。

6.最終プロジェクトの構造を見直す

プロジェクトの構造を確認する:


フォルダ構造、タイトル= "maven-hibernate-annotation-folder-structure"、width = 533、height = 475

7.それを実行する

“App.java”を更新していないだけで、それを実行すると、以前のリンクと同じ結果が表示されます。//hibernate/maven-3-hibernate-3-6-oracle-11g-example- xml-mapping/[Hibernate3.6 XMLマッピングチュートリアル]。

ダウンロードする – リンク://wp-content/uploads/2011/04/Maven3-Hibernate3.6-Oracle11-Annotation-Example.zip[Maven3-Hibernate3.6-Oracle11-Annotation-Example.zip](7KB)