前言,Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。
1、在Myeclipse的File选项新建一个Web Project,项目名为Hibernate_Test,选择Java EE 6.0或以上。
2、导入mysql-connector-java.jar包,可以选择两者之一方法导入
1)把mysql-connector-java.jar复制在apache-tomcat/lib目录下
2)把mysql-connector-java.jar复制在Hibernate_Test/WebRoot/WEB-INF/lib下
3、打开MySql,打开Navicat for MySQL,新建hibernate数据库,新建h_user表,新建如下字段
如下:
4、在Myeclipse的Window选项>Open Perspective>Myeclipse Database Explorer,右键Myeclipse Derby,新建一个数据库连接
5、在Hibernate_Test项目添加Hibernate容器
6、在Myeclipse Database Explorer中,双击刚刚新建的一个数据库连接conn,展开conn>hibernate>TABLE>h_user,右键新建Hibernate Reverse Engineering,添加User.hbm.xml映射文件
7、添加HUser.hbm.xml映射文件到hibernate.cfg.xml
1)若出现%%%% Error Creating SessionFactory %%%%错误,则在hibernate.cfg.xml的<mapping resource="top/k10000/HUser.hbm.xml"/>之前添加<property name="javax.persistence.validation.mode">none</property>
2)在HUser.hbm.xml,中id列改为increment
<id name="id" type="java.lang.Integer">
<column name="id" /><generator class="increment" />
</id>
8、在top.10000包中,新建Test.java,用来演示数据库的insert操作,右键Test.java>Run As>Java Application
package top.k10000;
import java.util.ArrayList;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class Test {
public static void main(String[] args){
Test test=new Test();//实例化Test类
test.insert();//调用insert方法
}
public void insert(){
Session session=HibernateSessionFactory.getSession(); //通过HibernateSessionFactory类的getSession方法获得Session对象
Transaction tx=session.beginTransaction(); //开始事务
HUser huser=new HUser(null, "k10000", "12345",new Date(),(long) 10086); //通过Stuinfo这个类的构造方法设置id、name、sex、age值
session.save(huser); //通过session保存info对象
session.flush(); //刷新session
tx.commit(); //提交事务
session.close(); //关闭session
}
}
效果: