このチュートリアルでは、以前のリンク://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ドキュメント]