从层次上看,JDBC是较底层的持久层操作方式,而Hibernate和MyBatis都是在JDBC的基础上进行了封装使其更加方便程序员对持久层的操作。

从功能上看,

JDBC就是简单的建立数据库连接,然后创建statement,将sql语句传给statement去执行,如果是有返回结果的查询语句,会将查询结果放到ResultSet对象中,通过对ResultSet对象的遍历操作来获取数据;

Hibernate是将数据库中的数据表映射为持久层的java对象,实现数据表的完整性控制;

MyBatis是将sql语句中的输入参数和输出参数映射为java对象,放弃了对数据表的完整性控制,但是获得了更灵活和响应性能更快的优势。

从使用上看,如果进行底层编程,而且对性能要求极高的话,应该采用JDBC的方式;如果要对数据库进行完整性控制的话建议使用Hibernate;如果要灵活使用sql语句的话建议采用MyBatis框架。

最新文章

  1. Android中获取选择图片与获取拍照返回结果差异
  2. Java_动态重新加载Class机制
  3. box2d最大速度限制
  4. 【原+转】用CMake代替makefile进行跨平台交叉编译
  5. 查找Linux系统中的占用磁盘空间
  6. Emmet (Zen Coding) 官方文档中HTML语法的总结
  7. hdu 1290
  8. Qt调用WebService
  9. Android Priority Job Queue (Job Manager)(一)
  10. 【MySQL】MySQL事务回滚脚本
  11. PHP:产生不重复随机数的方法
  12. 【转】CppUnit使用简介
  13. ModelAndView使用方法
  14. Python datetime time 常用操作
  15. 关于popupwindow的两种实现方式
  16. keytool 生成 Android SSL 使用的 BKS
  17. BZOJ 2693: jzptab( 莫比乌斯反演 )
  18. H264中的MapUnits
  19. [转载] Linux curl命令详解
  20. applicationContext.xml最基本配置文件

热门文章

  1. Pandas与Matplotlib
  2. iframe 高度宽度自适应
  3. BZOJ 4568 倍增维护线性基
  4. C#调用GPG命令进行加密解密文件操作
  5. C# AssemblyResolve事件可能不触发
  6. SpringCloud学习笔记(3)----Spring Cloud Netflix之深入理解Eureka
  7. 理解ZBrush中的笔触
  8. 前端那些事之----jQuery
  9. BZOJ3413: 匹配(后缀自动机,Parent树,线段树合并)
  10. echars 在vue v-if 切换会 显示不出来或者显示出来但是不是百分百显示