猿教程 Logo

Hibernate入门实例:Maven 3 + Hibernate 3.6 + Oracle 11g Example (基于注解)

本教程将重用和修改以前的Hibernate入门实例:Maven 3 + Hibernate 3.6 + Oracle 11g Example教程,但用Hibernate / JPA注解代码替换Hibernate映射文件(hbm)。

本文中的技术:

  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文件没有变化,所有以前的Hibernate3.6 XML映射教程依赖性都可以重复使用。

注意:从Hibernate 3.6开始,注解被集成到hibernate-core.jar模块中。 在以前的版本中,例如Hibernate 3.2,您需要添加额外的hibernate-annotations.jar才能使其工作。

2.删除Hibernate Mapping文件(hbm)

删除“DBUser.hbm.xml”文件,不再需要。

3.更新模型

更新“DBUser.java”,将JPA注解代码加入里面。

文件: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实用程序

没有更新“HibernateUtil.java”,因为Hibernate 3.6开始,XML映射和注解都共享相同的“org.hibernate.cfg.Configuration”类。

6.审查最终项目结构

查看您的项目结构:


7.运行实例

“App.java”上没有更新,只是运行它,您应该看到与以前的Hibernate入门实例:Maven 3 + Hibernate 3.6 + Oracle 11g Example运行结果相同。


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/Hibernate/hibernate-sessionfactory.html