MyEclipse10下开发第一个Hibernate小程序

一.首先,我们新建一个Java项目,取名为HibernateTest。

 

 

 

二.因为hibernate框架是用面向对象的思想来操作数据库,那么一定要建立数据库和表。

(1).这里我使用的是MySQL 5.6版本的数据库,大家可以去网上下载MySQL,我没有使用MySQL自带的管理工具和命令行工具,使用的是一款SQLyog工具,下载地址:http://download.csdn.net/detail/u012561176/8728955 ,其中关于一些数据库的jar包,也可以通过这个地址下载:http://download.csdn.net/detail/u012561176/8586153,都是免积分下载的,我们安装好MySQL后,再安装SQLyog管理工具后,开启MySQL服务,打开Sqlyog工具,如下图所示:

先点击测试连接,看是否可以正常连接到MySQL数据库,然后再点击连接按钮,即可。

 

(2).我们在这个管理工具里新建一个数据库student及相应的表stuinfo表,如下图所示:

点击保存即可,其中我们添加了一些数据。

 

 

 

三.配置数据库:

(1).打开MyEclipse工具里的Window菜单栏下的Open Perspective子菜单的MyEclipse Database Explorer,如下图所示:

点击之后,如下图所示:

 

(2).我们可以在DB Browser那里的空白处鼠标右键,选择New之后,在弹出的对话框当中配置数据库连接,如下图所示:

在配置对话框上,Driver template:选择数据库驱动类型,Driver name:数据库驱动名,输入数据库连接URL,输入数据库用户名和密码,然后在Driver JARs里添加MySQL JDBC的驱动包即可,如下图所示:

点击Test Driver进行测试,弹出下图对话框证明连接驱动成功:

 

(3).然后点击Next按钮,选择第三个,点击Add,如下图所示:

在MySQL中,相当于选择数据库,选择我们所需要加载的数据库,如下图所示:

点击Finsh按钮,完成数据库的配置,如下图所示:

 

 

 

 

四.初始化Hibernate开发环境,即使用MyEclipse自带的Hibernate来配置:

(1).在我们创建的那个Java项目HibernateTest上右键单击,选择MyEclipse下的Add Hibernate Capabilities后,弹出下图Hibernate的配置窗口,选择Hibernate 3.3版本:

 

(2).点击Next按钮,创建一个新的Hibernate配置文件,如下图所示:

 

 

(3).点击Next按钮,配置数据库的信息,在DB Driver当中选择刚刚定义的数据库连接配置,MyEclipse将自动填充相应的配置信息,包括JDBCDriver、URL、Username、Password及Dialect,如下图所示:

 

 

(4).点击Next按钮,在新的对话框当中点击Java package所在行的New按钮,该功能是定义HibernateSessionFactory所在路径,然后在Java Package的Name中输入包名,如下图所示:

点击Finish后,如下图所示:

 

(5).最后点击Finish后,该Java项目HibernateTest的目录结构如下:

我们可以看到,系统自动给我们生成了HibernateSessionFactory.java及hibernate.cfg.xml配置文件,其中Hibernate环境需要的MySQL JDBC驱动包也添加进去了。

 

 

 

五.通过反向工程,生成POJO及hbm映射文件,即生成持久化对象和映射文件,其中持久化对象的属性和表的字段一一映射:

(1).在DB Browser配置界面,进入student数据库,选择stuinfo表,如下图所示:

 

(2).右键单击stuinfo,选择Hibernate Reverse Engineering后,弹出如下的对话框,其中Java src folder选择我们那个HibernateTest项目,Java package选择com包,详细如下所示:

 

(3).点击Next按钮,在新的对话框当中,在Id Generator的选项可以根据关键字的设计进行选择,这里我们选择默认,如下图所示:

 

(4).点击Next按钮,可以修改类名和列名,如下图所示:

 

(5).最后,点击Finish后,HibernateTest项目目录结构如下:

 

 

 

 

六.测试用例:

(1).在HibernateTest项目下的com包下新建一个Test.java文件,其中我们可以向数据表stuinfo插入id,name,sex,age,,然后再把这些信息输出到控制台下,代码如下:

[java] view plain copy

  1. <span style="font-size:12px;">package com;  
  2.   
  3. import java.util.ArrayList;  
  4.   
  5. import org.hibernate.Session;  
  6. import org.hibernate.Transaction;  
  7.   
  8. public class Test {  
  9.     public static void main(String[] args){  
  10.         Test test=new Test();//实例化Test类  
  11.         test.insert();//调用insert方法  
  12.     }  
  13.       
  14.     public void insert(){  
  15.         Session session=HibernateSessionFactory.getSession();//通过HibernateSessionFactory类的getSession方法获得Session对象  
  16.         Transaction tx=session.beginTransaction();//开始事务  
  17.         Stuinfo info=new Stuinfo(2, "Lc", "man", 23);//通过Stuinfo这个类的构造方法设置id、name、sex、age值  
  18.         session.save(info);//通过session保存info对象  
  19.         session.flush();//刷新session  
  20.         ArrayList list=(ArrayList) session.createQuery("from Stuinfo s where s.id='2'").list();//执行HQL语句,查询到id为2的对象内容,并转换为list集合  
  21.         for(int i=0;i<list.size();i++){  
  22.             Stuinfo stu=(Stuinfo) list.get(i);//获取到对象的值  
  23.             System.out.println("Id:"+stu.getId()+",Name:"+stu.getName()+",Sex:"+stu.getSex()+",Age:"+stu.getAge());//打印从stu对象里获取到的值  
  24.         }  
  25.         tx.commit();//提交事务  
  26.         session.close();//关闭session  
  27.     }  
  28. }  
  29. </span>  

 

(2).运行后,结果如下:

 

 

(3).查看一下数据是否插入数据库里,发现插入进去了,如下图所示:

 

 

 

 

七.其中Hibernate可以进行手动配置,但是太为复杂,大家可以去官网下载HIbernate 4版本的,然后把下载到的zip包解压,把lib文件夹里的required目录下的jar包添加进项目中去,有的MyEclipse版本已经有了Hibernate 4.1版本,但是我们班一些同学搞这个版本一直出错,改成Hibernate 3.3版本便可以了。如果对于Hibernate的工作原理不理解的话,可以看我这篇文章:http://blog.csdn.net/u012561176/article/details/45875629 

 

 

 

八.以上内容仅供大家学习参考,写得不好,请见谅,如有错误,请指出,谢谢!

 

 

 

原文出处:http://blog.csdn.net/u012561176/article/details/45919751

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值