Hibernate应用程序可以使用注解来创建。有许多注解可用于创建Hibernate应用程序,例如@Entity、@Id、@Table等。

Hibernate注解基于JPA 2规范,并支持所有功能。

所有JPA注解都定义在 javax.persistence 包中。Hibernate EntityManager 实现了JPA规范定义的接口和生命周期。

使用Hibernate注解的核心优势在于您无需创建映射(hbm)文件。在这里,Hibernate注解用于提供元数据。

使用注解创建Hibernate应用程序的示例

在这里,我们将使用Eclipse IDE创建一个基于Maven的Hibernate应用程序,使用注解。要在Eclipse IDE中创建Hibernate应用程序,我们需要按照以下步骤进行操作:

1) 创建Maven项目

  • 要创建Maven项目,请左键单击 文件菜单 - 新建 - Maven项目

4-1.png

  • 新的Maven项目将在您的Eclipse中打开。点击下一步

4-2.png

  • 现在,选择目录类型:internal和maven原型 - 1.1版本的quickstart。然后,点击下一步

4-3.png

  • 现在,指定Group Id和Artifact Id的名称。Group Id包含包名称(例如com.javatiku),Artifact Id包含项目名称(例如HibernateAnnotation)。然后点击完成

4-4.png

2) 在pom.xml文件中添加项目信息和配置。

打开pom.xml文件并单击源。现在,在 <dependencies>....</dependencies> 标签之间添加以下依赖项。这些依赖项用于向Maven项目中添加jar文件。

<dependency> 
  <groupId>org.hibernate</groupId> 
  <artifactId>hibernate-core</artifactId> 
  <version>5.3.1.Final</version> 
</dependency> 
    
<dependency> 
  <groupId>com.oracle</groupId> 
  <artifactId>ojdbc14</artifactId> 
  <version>10.2.0.4.0</version> 
</dependency> 

由于某些许可问题,Oracle驱动程序不存在于公共Maven存储库中。我们可以手动安装它。要将Oracle驱动程序安装到本地Maven存储库,请按照以下步骤操作:

  • 安装Maven
  • 运行命令:install-file -Dfile=Path/to/your/ojdbc14.jar -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=12.1.0 -Dpackaging=jar

3) 创建持久化类。

在这里,我们创建与前一个主题中创建的相同的持久化类。但是在这里,我们使用注解。

@Entity 注解将此类标记为实体。

@Table 注解指定了要将该实体的数据持久化到的表名。如果不使用 @Table 注解,Hibernate将默认使用类名作为表名。

@Id 注解标记了此实体的标识符。

@Column 注解为此属性或字段指定了列的详细信息。如果未指定 @Column 注解,Hibernate将默认使用属性名作为列名。

要创建持久化类,请右键单击 src/main/java - 新建 - 类 - 指定包名及类名 - 完成

Employee.java

package cn.javatiku.mypackage; 

import javax.persistence.Entity; 
import javax.persistence.Id; 
import javax.persistence.Table; 

@Entity 
@Table(name= "emp500")  
public class Employee {  

  @Id  
  private int id;  
  private String firstName, lastName;  

  public int getId() {  
    return id;  
  }  

  public void setId(int id) {  
    this.id = id;  
  }  

  public String getFirstName() {  
    return firstName;  
  }  

  public void setFirstName(String firstName) {  
    this.firstName = firstName;  
  }  

  public String getLastName() {  
    return lastName;  
  }  

  public void setLastName(String lastName) {  
    this.lastName = lastName;  
  }  
}  

4) 创建配置文件

要创建配置文件,请右键单击 src/main/java - 新建 - 文件 - 指定文件名(例如hibernate.cfg.xml) - 完成

hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE hibernate-configuration PUBLIC 
 "-//Hibernate/Hibernate Configuration DTD 5.3//EN" 
 "http://www.hibernate.org/dtd/hibernate-configuration-5.3.dtd"> 
<hibernate-configuration> 
  <session-factory> 

  <property name="hbm2ddl.auto">update</property>  
  <property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>  
  <property name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>  
  <property name="connection.username">system</property>  
  <property name="connection.password">jtp</property>  
  <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>  
    
  <mapping class="cn.javatiku.mypackage.Employee"/> 
  </session-factory> 
</hibernate-configuration> 

5) 创建检索或存储持久对象的类。

StoreData.java

package cn.javatiku.mypackage;  

import org.hibernate.Session;  
import org.hibernate.SessionFactory;  
import org.hibernate.Transaction; 
import org.hibernate.boot.Metadata; 
import org.hibernate.boot.MetadataSources; 
import org.hibernate.boot.registry.StandardServiceRegistry; 
import org.hibernate.boot.registry.StandardServiceRegistryBuilder; 

public class StoreData {  
  public static void main(String[] args) {  
    
    StandardServiceRegistry ssr = new StandardServiceRegistryBuilder().configure("hibernate.cfg.xml").build(); 
    Metadata meta = new MetadataSources(ssr).getMetadataBuilder().build(); 
  
    SessionFactory factory = meta.getSessionFactoryBuilder().build(); 
    Session session = factory.openSession(); 
    Transaction t = session.beginTransaction();  
    
    Employee e1 = new Employee();  
    e1.setId(101);  
    e1.setFirstName("Gaurav");  
    e1.setLastName("Chawla");  
  
    session.save(e1); 
    t.commit(); 
    System.out.println("successfully saved");  
    factory.close(); 
    session.close();  
    
  }  
}  

6) 运行应用程序

在运行应用程序之前,请确保目录结构如下。

4-5.png

要运行Hibernate应用程序,请右键单击 StoreData - 运行为 - Java应用程序

标签: Hibernate, Hibernate教程, Hibernate框架, Hibernate框架设计, Hibernate初级教程, Hibernate框架用法, Hibernate指南, Hibernate入门, Hibernate中级教程, Hibernate进阶教程, Hibernate高级教程, Hibernate下载