Mybatis和Hibernate对比

运行速度

  Hibernate是在JDBC上进行了一次封装,而mybatis基于原生的JDBC,因此mybatis天生就有运行速度上的优势。

开发工作量

  Hibernate和MyBatis都有相应的代码生成工具。可以生成简单基本的DAO层方法。
  针对高级查询,Mybatis需要手动编写SQL语句,以及ResultMap。而Hibernate有良好的映射机制,开发者无需关心SQL的生成与结果映射,可以更专注于业务流程。

优势对比

  Mybatis优势

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

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

  Hibernate优势

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

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

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

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

总结


   mybatis门槛低,容易掌握,并且SpringBoot也是无条件集成mabatis,但是hibernate也有自己独特的东西。所以我认为,存在即合理,既然两个框架都能成为流行的持久层框架,那么他们肯定都有他们各自的过人之处,重点在于使用者如何根据实际需求权衡选择合适的框架和设计而已。

  
  

猜你喜欢

转载自blog.csdn.net/zhijianhuiyi/article/details/79483834