博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JPA,Hibernate,ibatis(mybatis)如何选用?
阅读量:6605 次
发布时间:2019-06-24

本文共 983 字,大约阅读时间需要 3 分钟。

转自:http://t.51jdy.cn/thread-259-1-1.html

传统的 业务系统,通常业务都比较复杂,懂业务的运维人员 对sql查询工具都比较熟悉。

这种以 数据库 为主的 业务场景 使用 以sql为主的持久层框架 例如:ibatis,mybatis
这种 性能优化的时候 sql 语句调整较为方便,甚至 业务人员 会直接提供 业务对于的 sql给开发人员。

 

对于快速迭代的中小型 新项目,适合使用hibernate(JPA + hibernate驱动)。

快速迭代 适合 使用面向对象的 持久层框架。在开发过程中 对象的变更非常频繁。
这种 持久层框架 适合 快速 重构 ,提高开发效率。
但是 这种框架 易学难精,用的不好就容易造成性能问题,用的好性能并不输于ibatis框架。
在做性能优化方面 可借助 缓存实现。  

 

Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些。个人觉得要用好Mybatis还是首先要先理解好Hibernate。

 

Mybatis优势
  • MyBatis可以进行更为细致的SQL优化,可以减少查询字段。
  • MyBatis容易掌握,而Hibernate门槛较高。
Hibernate优势
  • Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。
  • Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。
  • Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。
  • Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。
作者:乌拉拉
链接:https://www.zhihu.com/question/21104468/answer/58579295
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 
 
Hibernate全自动机枪,MyBatis半自动机枪,然后在高速射击数据库子弹的情况下,Hibernate容易卡壳,那时你就会说原来还是myBatis靠谱。。。

转载于:https://www.cnblogs.com/zhanying999666/p/7284314.html

你可能感兴趣的文章
如何在列表,字典,集合中根据条件筛选数据
查看>>
js 随机数 转 http://www.cnblogs.com/banbu/archive/2012/07/25/2607880.html
查看>>
关于angular自定义组件在外面使用的时候异步的拉取数据传递给组件的问题
查看>>
hausaufgabe--python 17- Function definition
查看>>
【JOISC2019|2019】【20190622】cake3
查看>>
react(二)
查看>>
简单测试java - properties
查看>>
js中sort()方法的用法,参数以及排序原理
查看>>
对 set statistics time on的两个执行时间权威解释
查看>>
python print的用法
查看>>
JavaScript Math.abs() 函数
查看>>
过滤器 自定义查询
查看>>
格式化输出,%n.m
查看>>
Linux那些让你虎躯一震的命令
查看>>
ethereum/EIPs-1077 Executable Signed Messages
查看>>
跑步圣经(来自樊登读书会)
查看>>
SpringBoot环境搭建及第一个程序运行(详细!)
查看>>
常用sql经典语句
查看>>
009_作用域
查看>>
javascript事件处理
查看>>