第八章 Eclipse中的Hibernate数据库开发

Hibernate一个框架。现在的web数据库开发一般基于Hibernate框架。进行基于Hibernate框架的web开发,需要Hibernate框架工具包的支持,myeclipse自带Hibernate框架工具包。

 

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

  Hibernate用来开发数据库web编程,将java中的对象和对象之间的关系 -----》映射到数据库的表和表之间的关系。起到java应用和数据库之间的桥梁的作用。

 现在,越来越多的数据库开发采用在数据库上添加Hibernate面向对象处理层。将数据库中的表定义为一个个的实体类。

Hibernate项目有一个配置文件hibernate.cfg.xml,它包括一些配置信息,如数据库的jdbc链接,服务器链接地址,用户名等信息和映射实体类配置文件等

Hibernate项目

               通过session对象操作数据库(如查询、插入等),类似于jdbc中的Connection对象。

               session对象的获取(创建)和释放通过sessionfactory对象来控制,类似于connettion对象的创建和释放。一个项目有一个sessionfactinoy对象(类)就可以。

session对象操作数据库,需要从hibernate.cfg.xml中获取数据库连接配置参数,所以session对象要能访问到hibenate.cfg.xml。

Hibernate对数据库表的常用操作,映射到实体类的属性和方法的直接操作。实体类<------->映射文件(*.hbm.xml)<------->数据库表

⑥web项目添加hibernate支持

             第一步:项目添加Hibernate支持,4个页面,1:添加hibernate支持,2:hibenate配置文件路径3:配置数据库连接信息(此处不配置,到第三步单独配置)4:创建sessionfactory类,及其存放路径

             第二步:为项目建立一个数据库连接配置,即在“DB Brower”中建立一个数据库连接配置,如名称"lianjieshujuku"。(和第一步并列,不分先后顺序。即使不使用hibernatre框架,也要建立数据库链接配置)

             第三步:为Hibernate绑定数据库连接配置(第二步建立的),打开hibernate编辑器,填入第二部建立的链接配置"lianjiepeizhi“

    即:数据链接信息保存在hibernate.cfg.xml配置文件中,sessionfactory类包含有con_file_location配置文件路径(hibernate.cfg.xml路径)因此可以连接数据库,sessionfactory类可以创建session类(对象)用来操作数据库。

           第四步:创建实体类(同时也创建对应的DAO类),创建数据库表--------对应实体类----以及映射文件,另一种说法:创建数据库表对应的实体类+同时也创建了对应的DAO类。

            关键:实体类和数据库表的关联是通过映射文件,映射文件时自动创建的,不用关它,可以理解为创建数据库表对应的实体类实体类通过自己属性和方法对数据库进行访问和操作。hibernate项目对数据库的操作都是通过这个实体类来进行。

            实体类:即为映射文件和表生成的持久化数据实体类。-----------可以为实体类生成一个abstract类型的父类,隔离数据表字段和其它字段。

            引入Abstract类目的:  如user表:AbstractUser实体类只关注对数据库表字段的处理;User实体类只关注非数据库部分数据的处理和业务逻辑方面的处理。

 

            DAO类然而通常在实体类之上建立对实例类访问的DAO类。  对实体类的数据库操作都通过这个DAO类来进行       实体类之上------》DAO类

            引入DAO层的目的:为了将底层对数据的访问与高层的业务逻辑处理分离开。

             UserDAOl类:通过第4步建立实体类之后,userdao类包含多个方法,如delete()、save()方法分别调用session的delete()和save()方法,在数据库表user中删除和插入一个user对象。(一条记录就是一个user对象)

       第五步:建立DAOFactory类和IUserDAO接口这两个类。

                         user DAO实现类<------IuserDao接口<--------上层业务逻辑层userserver

             IuserDao接口目的: user DAO实现类 改变了,而接口不变,则业务逻辑层userserver不需要做任何修改。类似程序接口

详细开发步骤:

1.建立web工程    (new---》myeclipse-----》myeclipse----j2ee projects----->webproject)

2将工程增加hibernate支持(右键---》myeclipse---》add hibernate。第一步建立hibernate.cfg.xml配置文件,第三步建立Hibernatesessionfactory。)

3.建立数据库连接(事先建立一个TestDBsql数据库,点击--window-->show view----->other---myeclipse enterprise---->db browers。点击dbbrowers的new图标,profilename填入连接名称,driver要注册一个。点击new ,drivername随便输入一个名称,connetion url 输入jdbc:mysql://localhost:3306/TestDB,并添加addJARs)

4.创建数据库表对应的实体类和映射文件。第一页面,全部复选上,第二页跨过去,第三页面classname为空(自动生成),id generator为native

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值