Hibernate

本文介绍Hibernate框架的特点及使用流程,强调其对象化、移植性和开发效率优势,并探讨了缓存机制和批量处理等关键议题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hibernate

特点:

  • Hibernate是一个操作数据库的框架,实现了对JDBC的封装。
  • Hibernate是一个ORM(对象关系映射)框架,我们在写程序时,用的是面向对象的方法,但是在关系型数据库里,存的是一条条的数据,为了用面向对象的思想解决问题,所以需要将程序中的对象和数据库中的记录建立起映射关系,ORM就是这样的技术,而Hibernate就是在ORM技术基础上的框架。通过操作对象完成对数据库中记录的操作。
  • Hibernate简化了代码的编写,原生态的JDBC需要书写定量的代码来实现操作数据库。而运用Hibernate框架只需要很少量的代码即可完成操作。
  • Hibernate框架屏蔽了数据库的差异,增强了对数据库的可移植性。

    Hibernate的优缺点:

优点:

  1.     对象化。可以让开发人员通过操作对象实现对数据库的操作。
  2.     更好的移植性。hibernate使用xml或者JPA的配置以及数据库方言等等的机制,是的hibernate具有更好的移植性,对于不同的数据库,开发者只需要使用相同的数据操作即可,无序关心数据库之间的差异。
  3.     开发效率高。hibernate框架提供了大量的封装(同时也是最大的缺点),很多数据操作以及关联关系等都被封装的很好,开发者不需要写大量的sql语句,这就几大的提高了开发者的开发效率。
  4.     缓存机制的使用。hibernate提供了缓存机制(session缓存,二级缓存,查询缓存),对于那些改动不大且经常使用的数据,可以将他们放到缓存中,不必在每次使用的时候都去查询数据库,缓存机制对提升性能有裨益。

缺点:

  1. hibernate在批量处理数据时候有弱势,对于批量的修改,删除,不适合用hibernate,这也是PRM框架的弱点。
  2. 由于对持久层封装过于完整,导致开发人员无法对SQL进行优化,无法零花的使用JDBC的原生SQL。Hibernate封装了JDBC,所以没有JDBC直接访问数据库效率高。要使用数据库的特定优化机制时,不适合用hibernate
  3. 框架中使用ORM技术,导致配置过于复杂,一旦遇见大型项目,比如300张表以上,配置文件和内容是非常庞大的,另外DTO满天飞,性能和维护问题随之而来。
  4. 如果项目集中各个表中关系复杂,表之间的关系很多,在很多地方把lazy都设置false,会导致数据查询和加载很慢,尤其是级联查询的时候。

                 

二、使用Hibernate的基本流程:配置实现类与数据库表的映射关系,产生sessionFactory,打开session通道拿到session对象,开启事务,完成操作,关闭session。

  使用Hibernate时,先要配置hibernate.cfg.xml文件,其中配置数据库连接信息和方言等。还要为每个实体配置相应的hbm.xml文件(映射文件),也可以采用注解的方式实现映射关系。在hibernate.cfg.xml中需要等级每个hbm.xml文件。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值