您的位置:首页 > 编程语言 > Java开发

MyEclipse10下开发第一个Hibernate小程序

2017-04-15 22:20 309 查看
一.首先,我们新建一个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

<span style="font-size:12px;">package com;  
  
import java.util.ArrayList;  
  
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();//开始事务  
        Stuinfo info=new Stuinfo(2, "Lc", "man", 23);//通过Stuinfo这个类的构造方法设置id、name、sex、age值  
        session.save(info);//通过session保存info对象  
        session.flush();//刷新session  
        ArrayList list=(ArrayList) session.createQuery("from Stuinfo s where s.id='2'").list();//执行HQL语句,查询到id为2的对象内容,并转换为list集合  
        for(int i=0;i<list.size();i++){  
            Stuinfo stu=(Stuinfo) list.get(i);//获取到对象的值  
            System.out.println("Id:"+stu.getId()+",Name:"+stu.getName()+",Sex:"+stu.getSex()+",Age:"+stu.getAge());//打印从stu对象里获取到的值  
        }  
        tx.commit();//提交事务  
        session.close();//关闭session  
    }  
}  
</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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java ee