一、关键字说明:
oop:面向对象
aop:面向切面
ioc:控制反转
orm:对象关系映射
pojo:数据库表映射的java实体类

二、常识说明:
1.hibernate和mybatis都属于持久层、orm框架,都可以通过xml或者注解来提供映射规则。
2.hibernate是完全面向POJO,mybatis不是。hibernate基本不再需要编写SQL,就可以通过映射关系来操作数据库,是一种全表映射的体现。
而mybatis则需要使用者提供SQL去运行。
3.myBatis只需要一个映射xml文件、一个java映射类,有趣的是不需要实体bean类。

三、Hibenate和Mybatis的区别
Hiernate和Mybatis的增删查改,对于业务逻辑层来说大同小异,对于映射层而言Hibernate的配置不需要借口和SQL,相反Mybatis则是需要的。
对于Hibernate而言,不需要编写大量的SQL,就可以完全映射,同时提供了日志、缓存、级联(级联比MyBatis强大)等特性,此外还提供HQL(Hibernate Query Language)对POJO进行操作,
使用十分方便,但是它也有致命的缺陷。
由于无须SQL,当多表关联超过3个的时候,通过Hibernate的级联会造成太多的性能丢失,又或者我现在访问一个财务的表,然后他会关联财产信息表,财产又分为机械、原料等,显然机械和原料是不同的,
这样关联字段只能根据特定的条件变化而变化,而Hibernate无法支持这样的变化。遇到存储过程,Hibernate只能作罢。更为关键的是性能,在管理系统的时代,对于性能的要求不是那么苛刻,但是在互联网
时代性能就是系统的根本,响应过慢就会丧失客户,试想一下谁会用一个经常需要等待超过10s以上的应用呢?
以上的问题Mybatis都可以解决,Mybatis可以自由书写SQL、支持动态SQL、处理列表、动态生成表名、支持存储过程。这样就可以灵活地定义查询语句,满足各类需求和性能优化的需要,这些在互联网系统中是十分重要的。
但MyBatis也有缺陷。首先,它需要编写SQL和映射规则,其工作量稍微大于Hibernate。其次它支持的工具也很有限,不能像Hibernate那样有很多插件可以帮助生成映射代码和关联关系,而即使使用生成工具,往往也需要开发者
进一步简化,Mybatis通过手工编码,工作量相对大些。所以对于性能要求不太严苛的系统,比如管理系统、ERP系统等推荐使用Hibernate;而对于性能要求高、响应快、灵活的系统则推荐使用Mybatis。

转载于:https://www.cnblogs.com/newwind/p/9273121.html

JavaEE互联网轻量级框架整合开发(书籍)阅读笔记(1):Mybatis和Hibernate概念理解...相关推荐

  1. javaee互联网轻量级框架整合开发_企业开发:Spring框架的简易、高效切入篇

    原文:http://blog.csdn.net/qq_15096707/article/details/72819930作者:梦小白 介绍 Spring框架是个轻量级的Java EE框架.所谓轻量级, ...

  2. javaee互联网轻量级框架整合开发_整合MyBatis的关键点及快速入门

    对于从事Web应用开发人员,Java EE平台如今已经成为电信.金融.电子商务.保险.证券等各行业的大型应用系统的首选开发平台.在企业级应用的开发选择上,.NET已趋式微,PHP通常只用于开发一些企业 ...

  3. JavaEE互联网轻量级框架整合开发(书籍)阅读笔记(6):Spring IOC容器学习(概念、作用、Bean生命周期)...

    一.IOC控制反转概念 控制反转(IOC)是一种通过描述(在Java中可以是XML或者是注解)并通过第三方去生产或获取特定对象的方式. 主动创建模式,责任在于开发者,而在被动模式下,责任归于Ioc容器 ...

  4. java ee ssh三大框架知识点_详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)...

    详解JAVAEE--SSH三大框架整合(spring+struts2+hibernate) 发布时间:2020-09-17 13:34:05 来源:脚本之家 阅读:64 作者:kent鹏 一.整合原理 ...

  5. 大道PHP+LAMP+ZEND+开源框架整合开发与实战|pdf电子书(100m)

    内容简介 <大道PHP:LAMP+Zend+开源框架整合开发与实战>以PHP应用程序开发为主题,对实践中必不可少的各项重要技术进行了全面介绍与系统讲解,并对多个PHP开源框架的应用进行了深 ...

  6. JAVA WEB整合开发王者归来 -- 读书笔记 by CZF 完整版

    JAVA WEB整合开发王者归来 -- 读书笔记  目录 第1章 概述. 1 第2章 搭建web开发环境. 1 第3章 Servlet技术. 1 第4章 深入JSP技术. 7 第5章 会话跟踪. 12 ...

  7. 《第一行代码》书籍阅读笔记

    注:书籍阅读笔记,方便查看 第1章 开始启程,你的第一行Android代码 第2章 先从看得到的入手,探究活动 1.隐藏标题栏 在onCreate()方法中添加: requestWindowFeatu ...

  8. 《Deep Learning Techniques for Music Generation – A Survey》深度学习用于音乐生成——书籍阅读笔记(一)Chapter 1

    <Deep Learning Techniques for Music Generation – A Survey>深度学习用于音乐生成--书籍阅读笔记(一)Chapter 1 关于这本书 ...

  9. 《JavaEE框架整合开发入门到实战——Spring+SpringMVC+MyBatis》读书笔记

    加油生活,嗯,希望假期可以把这本书刷完,新年快乐,嘻嘻,今天是旧的一年里最后的一天,嗯,除夕一过,就25岁啦.希望新的一年里,学更多的东西,认识优秀的人,希望家人健康平安,希望自己少一些烦恼,总之先学 ...

最新文章

  1. MySQL添加用户、删除用户与授权
  2. 使用 Swagger 文档化和定义 RESTful API
  3. 电脑如何进入bios模式_电脑如何进入bios关闭软驱
  4. wether.html5.qq.com,weather.html
  5. Kapacitor安装及使用
  6. 中国现磨咖啡行业白皮书
  7. 半导体重磅!英飞凌宣布100亿美元收购赛普拉斯
  8. HDU 5046 Airport ( Dancing Links 反复覆盖 )
  9. 微信安装包11年膨胀575倍,UP主:“98%的文件是垃圾”;苹果应用商店被曝大量色情App;四大科技巨头呼吁废除闰秒|极客头条
  10. tftp协议服务器IP地址,TFTP服务器的搭建
  11. 联合概率分布、边缘概率分布
  12. 电商行业用户画像分析案例
  13. SQLAlchemy session 使用问题
  14. entrez检索系统要服务器吗,Entrez检索系统的简介.doc
  15. 带无线驱动的linux版本,CentOS 5.6 上安装支持802.11b/g无线网卡驱动具体过程
  16. 自然之州阿肯色及温泉国家公园
  17. 一招教你电脑微信双开
  18. 中继器系列:中继器增删改查
  19. 【小月电子】国产安路FPGA开发板系统学习教程-LESSON9简易测试系统
  20. 【面试必过系列,15个经典面试问题及回答思路

热门文章

  1. 伊利诺伊大学厄巴纳-香槟分校
  2. ESXI5.5添加本地磁盘出错的解决
  3. [AlwaysOn Availability Groups]排查:Primary上的修改无法在Secondary体现
  4. MVP模式在Android中的应用之图片展示选择功能的框架设计
  5. Mysql中设置默认时间为当前值
  6. inno打包软件出现 main方法找不到
  7. jQuery zTree几种常用的使用方式
  8. linux中各种文件的颜色表示是什么意思?
  9. C-Substring的实现
  10. nconf创建nagios实例