步骤:
1、导包(hibernate的包,还有数据库用到的)
2、创建hibernate的配置文件
3、创建持久化类
4、创建对象-关系映射文件
5、通过hibernate API 编写访问数据库的代码
1、到官方网站下载对应版本的源码,然后解压缩,在一级目录下得到hibernate的核心包,我用的是hibernate3,然后在lib/required目录下得到所需要的包,我用的是mysql6,还需要mysql的包,新建web项目,然后把刚才的jar包,放在lib目录下。
2、hibernate的配置文件,可以在project/etc目录下获得,然后把这个文件拷贝到项目的src目录下。如下配置:
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="mysql">
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
<property name="connection.username">root</property>
<property name="connection.password"></property>
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="show_sql">true</property>
<mapping resource="com/demo/pojo/Students.hbm.xml"/>
</session-factory>
</hibernate-configuration>
3、持久化类中的属性与数据库中的字段最好一一对应,然后在生成相应的getter和setter方法
package com.demo.pojo;
public class Students {
private int sid;
private String sname;
public int getSid() {
return sid;
}
public void setSid(int sid) {
this.sid = sid;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
}
4、创建对象关系映射文件,如下
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.demo.pojo">
<!-- 一个class对应一个类,与表相关联起来 -->
<class name="Students" table="students">
<!--id对应的是主键 -->
<id name="sid" column="sid" type="int">
</id>
<!-- property对应的是其它列 -->
<property name="sname" column="sname" type="string" />
</class>
</hibernate-mapping>
5、编写测试类
package com.demo.dao;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import com.demo.pojo.Students;
public class HibernateTest {
public static void main(String[] args) {
/**
* buildSessionFactory默认会读取名字叫做hibernate.cfg.xml的文档,然后解析里面的
* 内容从而生成SessionFactory,然后这个SessionFactory负责数据库连接
* */
SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
try
{
Students s = new Students();//生成要操作的对象
s.setSid(1);
s.setSname("zhansan");
session.save(s);//保存这个对象
tx.commit();//提交事务
} catch (Exception e)
{
e.printStackTrace();
tx.rollback();//回滚事务
}finally{
if(session!=null)
{
session.close();//释放资源
}
}
}
}