MyBatis与Hibernate的区别


什么是mybatis?

  mybatis是一个持久层的框架,是apache下的顶级项目。一开始托管到goolecode下,再后来托管到github下(https://github.com/mybatis/mybatis-3/releases)。

  mybatis让程序将主要精力放在sql上,通过mybatis提供的映射方式,自由灵活生成(半自动化,大部分需要程序员编写sql)满足需要sql语句。

  mybatis可以将向 preparedStatement中的输入参数自动进行输入映射,将查询结果集灵活映射成java对象。(输出映射)

  

Mybatis与Hibernate的区别?

hibernate:
  是一个标准ORM框架(对象关系映射)。入门门槛较高的,不需要程序写sql,sql语句自动生成了。对sql语句进行优化、修改比较困难的。

应用场景:
  适用与需求变化不多的中小型项目,比如:后台管理系统,erp、orm、oa…
  
mybatis:
  专注于sql本身,需要程序员自己编写sql语句,sql修改、优化比较方便。
  mybatis是一个不完全 的ORM框架,虽然程序员自己写sql,mybatis 也可以实现映射(输入映射、输出映射)。

应用场景:
  适用与需求变化较多的项目,比如:互联网项目。

---------------- The End ----------------
0%