概述
对比项 | Hibernate | mybatis |
学习成本 | 高 | 低 |
系统调优方案对比 | 1、制定合理的缓存策略; 2、尽量使用延迟加载特性; 5、进行合理的 O/R 映射设计 | 1、MyBatis 可以进行详细的 SQL 优化设计 2、MyBatis 在 Session 方面和 Hibernate 的 Session 生命周期是一致的, 同样需要合理的 Session 管理机制。 MyBatis 同样具有二级缓存机制。
|
SQL优化方面 | 1、使用的是封装好, 通用的 SQL 来应付所有场景 3、可以自己写SQL,但违背了框架的初衷 | 1、是针对响应的场景设计的 SQL,更灵活、 可控性更好、 更优化 |
移植性 | 1、与具体数据库的关联只需在 XML 文件中配置即可 2、所有的 HQL 语句与具体使用的数据库无关, 移植性很好 | 1、所有的 SQL 语句都是依赖所用的数据库的 2、所以不同数据库类型的支持不好 |
JDBC | 是在 JDBC 上进行了一次封装。 | 基于原生的 JDBC 的。 Mybatis 有运行速度上的优势。 |
动态SQL | 不支持 | 支持 |
建议选择情况 | 1、适用于中小企业需求变化不多的项目, 比如后台管理系统, erp、 orm、oa 2、其它条件满足,看团队大多数人员的倾向使用 | 1、数据量大(千万级),高并发 2、表关联复杂度(>20) 3、项目要求对于数据库可控性好, 可深度调优 |
备注 | 全“智能”,效率慢 | 半“智能”,效率快些(而JDBC效率更快,性能更高) |
最后
以上就是正直鸵鸟为你收集整理的如何选择使用Hibernate和mybatis,简单对比Hibernatemybatis的全部内容,希望文章能够帮你解决如何选择使用Hibernate和mybatis,简单对比Hibernatemybatis所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复