JDBC、Hibernate、Mybatis之间的区别

JDBC
JDBC执行的操作

  1. 1、注册驱动(forClass)
  2. 编写sql
  3. 预编译(通过Connection得到Statement)
  4. 设置参数(往Statement中添加参数)
  5. 执行sql(通过Statement执行sql)
  6. 封装结果(通过ResultSet得到结果)

JDBC的优点:

很清楚明白的看出数据库所执行的操作
JDBC的缺点:

  1. 编写工作量巨大
  2. 灵活性差
  3. 需要及时处理异常并正确关闭数据源

Hibernate
执行过程

  1. 读取配置文件完成ORM的映射关系
  2. 获取session进行增删改查的操作

Hibernate的优点

  1. 维护方便,数据库连接和POJO类的映射都写在xml文档中
  2. 操作方便,只需获取session就可以对数据库进行操作,关闭时也只需关闭session

Hibernate的缺点

  1. 全映射会造成性能比较差
  2. sql语句由于是hibernate生成而造成了sql的灵活性较差,不方便定制高效sql
  3. 自带的HQL语句性能较低

Mybatis
Mybatis优点

  1. 半自动的执行方式,除sql外操作由框架完成,方便快捷
  2. 手工定制sql,实现sql与java代码分离,灵活性高,方便维护
  3. 只需要sql进行操作,不需要学习额外的内容
  4. 轻量级的框架,执行速度快
山重水复疑无路,柳暗花明又一村! 专注填坑,少走弯路!
原文地址:https://www.cnblogs.com/mqflive81/p/10897771.html