欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mybatis和hibernate的区别

程序员文章站 2022-03-30 10:17:40
1.开发方面 hibernate开发中,sql语句已经被封装,直接可以使用,加快系统开发; Mybatis 属于半自动化,sql需要手工完成,稍微繁琐; 如果对于庞大复杂的系统项目来说,发杂语句较多,选择hibernate 就不是一个好方案2.sql优化方面 Hibernate 自动生成sql,有些语句较为繁琐,会多消耗一些性能; Mybatis 手动编写sql,可以避免不需要的查询,提高系统性能;3.对象管理比对 Hibernate 是......

1. 开发方面

     hibernate开发中,sql语句已经被封装,直接可以使用,加快系统开发;

     Mybatis 属于半自动化,sql需要手工完成,稍微繁琐;

     如果对于庞大复杂的系统项目来说,发杂语句较多,选择hibernate 就不是一个好方案

2.sql优化方面

   Hibernate 自动生成sql,有些语句较为繁琐,会多消耗一些性能;

   Mybatis 手动编写sql,可以避免不需要的查询,提高系统性能;

3.对象管理比对

   Hibernate 是完整的对象-关系映射的框架,开发工程中,无需过多关注底层实现,只要去管理对象即可;

   Mybatis 需要自行管理 映射关系;

4.缓存

   Hibernate 具有良好的管理机制,用户不需要关注SQL,如果二级缓存出现脏数据,系统会保存,;

   Mybatis 在使用的时候要谨慎,避免缓存CAche 的使用。

Hibernate优势

  1. Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。

  2. Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。

  3. Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。

  4. Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。

Mybatis优势

  1. MyBatis可以进行更为细致的SQL优化,可以减少查询字段。

  2. MyBatis容易掌握,而Hibernate门槛较高。

本文地址:https://blog.csdn.net/weixin_42083855/article/details/107140546