全屏
在第一个Hibernate入门示例程序中,我们将使用eclipse IDE创建一个简单的hibernate应用程序示例。要在Eclipse IDE中创建第一个hibernate应用程序,需要遵循以下步骤:重要提示:按照惯例,易百教程的每个入门教程程序都会详细介绍对应环境的安装,配置和运行步骤,以帮助读者/学习者快速入门。往后的系列教程中没有特别说明,都会以入门教程程序配置为参考。所以,在您阅读每一篇文章遇到配置或运行环境不清楚,请参考入门教程程序配置。创建java项目
为hibernate添加jar文件
创建持久类
创建持久类的映射文件
创建配置文件
创建检索或存储持久对象的类
运行应用程序前提工作:Eclipse Neon.2 Release (4.6.2)。 参考:http://www.sxt.cn/eclipse/
下载 Hibernate 相关类库(Jar文件)
创建一个数据库表:tb_employee
1. 创建java项目
打开Eclipse,通过 File -> New -> project -> java project 创建java项目。 现在指定项目名称: first-hibernate, 然后 next-> 完成。
2. 为hibernate添加jar文件
添加jar文件右键单击您的项目(first-hibernate) -> Build Path -> 添加外部存档。
现在选择所有的jar文件,如下图所示 -
创建一个用户自定义库,为这个自定义库起个名字:hibernate-jars,并选择 hibernate 相关jar包。
完成后加入效果如下所示 -
在这个例子中,我们将应用程序与MySQL数据库连接。 所以你必须添加mysql-connect.jar文件。
3. 创建持久化类
在这里,要创建持久化类,右键单击src -> New -> Class - 使用包名指定类(例如:com.sxt.mypackage) -> finish。
Employee.javapackage cn.sxt.mypackage;
public class Employee {
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 -> new -> file -> 指定文件名(例如employee.hbm.xml) , 它必须在包外部。
employee.hbm.xml<?xml version='1.0' encoding='UTF-8'?> hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
XML
5. 创建配置文件
配置文件包含数据库的所有信息,如:connection_url,driver_class,username,password等。hbm2ddl.auto属性用于自动在数据库中创建表。 我们将在下一个主题中深入学习Dialect类。 要创建配置文件,请右键单击src -> new -> file。 现在指定配置文件名,例如: hibernate.cfg.xml。
hibernate.cfg.xml<?xml version='1.0' encoding='UTF-8'?> hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
update
org.hibernate.dialect.Oracle9Dialect
jdbc:oracle:thin:@localhost:1521:xe
system
oracle
oracle.jdbc.driver.OracleDriver
6. 创建检索或存储持久对象的类
在这个类中,我们只是将employee对象存储到数据库中。package cn.sxt.mypackage;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class StoreData {
public static void main(String[] args) {
//creating configuration object
Configuration cfg=new Configuration();
cfg.configure("hibernate.cfg.xml");//populates the data of the configuration file
//creating seession factory object
SessionFactory factory=cfg.buildSessionFactory();
//creating session object
Session session=factory.openSession();
//creating transaction object
Transaction t=session.beginTransaction();
Employee e1=new Employee();
e1.setId(100);
e1.setFirstName("Max");
e1.setLastName("Su");
session.persist(e1);//persisting the object
t.commit();//transaction is committed
session.close();
System.out.println("successfully saved");
} }
7. 运行应用程序
在运行应用程序之前,确定目录结构如下图所示 -
在运行这个示例之前,还差关键的一个步骤,那就是创建对象对应的表:tb_employee,其结构及创建语句语句如下-CREATE TABLE `tb_employee` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`firstName` varchar(32) NOT NULL DEFAULT '',
`lastName` varchar(32) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8;SQL
接下来,就是运行hibernate应用程序,请右键单击StoreData类 -Run As - Java应用程序。
输入结果如下 -INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect
Hibernate: insert into tb_employee (firstName, lastName, id) values (?, ?, ?)
successfully savedShell
查看 tb_employee 表中的数据,如下 -
分享到:
0评论