1.本质区别:
hibernate:是一个标准ORM框架(对象关系映射)。入门门槛较高的,不需要程序员写sql,sql语句自动生成了。对sql语句进行优化、修改比较困难的。
mybatis:专注是sql本身,需要程序员自己编写sql语句,sql修改、优化比较方便。mybatis是一个不完全的ORM框架,虽然程序员自己写sql,mybatis 也可以实现映射(输入映射、输出映射)。
2.应用场景:
hibernate的应用场景:
适用与需求变化不多的中小型项目,比如:后台管理系统,erp、orm、oa。
mybatis的应用场景:
适用与需求变化较多的项目,比如:互联网项目(京东、淘宝。。)
企业进行技术选型,以低成本高回报作为技术选型的原则,根据项目组的技术力量进行选择。