このチュートリアルでは、以前のリンク://hibernate/maven-3-hibernate-3-6-oracle-11g-example-xml-mapping/[Hibernate3.6 XMLマッピングチュートリアル]を再利用して変更しますが、Hibernateマッピングファイルhbm)をHibernate/JPA注釈コードで置き換えます。
この記事の技術:
-
Maven 3.0.3
-
JDK 1.6.0__13
-
Hibernate 3.6.3.final
-
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
“クラスを共有しています。
-
Bye bye AnnotationConfiguration ** これを読んでください:
AnnotationConfigurationはHibernate 3.6では非推奨
6.最終プロジェクトの構造を見直す
プロジェクトの構造を確認する:
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)
リファレンス
3.6ドキュメント]