Hibernate和MyBatis区别说明

乔欣 Java面经 发布时间:2022-11-07 17:06:31 阅读数:12916 1 MyBatis面试题(2023优化版)
下文笔者讲述Hibernate和MyBatis的区别说明,如下所示

Hibernate和MyBatis的相同点

两个框架都是对jdbc封装
Hibernate和MyBatis都是持久层的框架
Hibernate和MyBatis都用于dao层开发

Hibernate和MyBatis的区别

 
区别1:映射关系
   MyBatis:
      是一个半自动映射的框架
      用于配置Java对象与sql语句执行结果的对应关系
      多表关联关系配置简单
   Hibernate:
      是一个全表映射的框架
      配置Java对象与数据库表的对应关系
      多表关联关系配置复杂

区别2:SQL优化和移植性
   Hibernate:
      对SQL语句封装,提供了日志、缓存、级联(级联比 MyBatis强大)等特性
      此外还提供HQL(Hibernate Query Language)操作数据库
      数据库无关性支持好
      但会多消耗性能
      如果项目需要支持多种数据库,代码开发量少,但SQL语句优化困难
   MyBatis:
      需要手动编写SQL
      支持动态SQL、处理列表、动态生成表名、支持存储过程
      开发工作量相对大些
      直接使用SQL语句操作数据库,不支持数据库无关性,但sql语句优化容易

区别3:开发难易程度和学习成本
      Hibernate:
	     是重量级框架
        学习使用门槛高
        适合于需求相对稳定
        中小型的项目,如:办公自动化系统

      MyBatis:
	    是轻量级框架,学习使用门槛低,
		  适合于需求变化频繁,大型的项目
        如:互联网电子商务系统
从上面的描述,我们可以得出以下结论
  
MyBatis:
    是一个小巧、方便、高效、简单、直接、半自动化的持久层框架
Hibernate:
    是一个强大、方便、高效、复杂、间接、全自动化的持久层框架
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202211/16678126434839.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者