Hibernate和MyBatis的区别

1、首先,Hibernate和Mybatis都是操作数据层数据的

2、Hibernate是全自动,MyBatis是半自动

         Hibernate是一个完全(标准)的ORM框架(对象关系映射),Hibernate的SQL语句是全自动生成,也就是通过JavaBean对象与数据库的映射结构来自动生成SQL语句,所以不需要写SQL语句;

        而MyBatis是一个不完全的ORM框架,mybatis仅有基本的字段映射,对象数据以及对象实际关系仍然需要通过手写sql来实现和管理。

3、SQL在直接优化上,MyBatis要比Hibernate方便很多

         Hibernate的sql很多都是自动生成的,无法直接维护sql,所以SQL语句优化、修改起来也会比较困难。

         MyBatis更专注的是SQL本身,它需要写大量SQL语句,MyBatis的sql都是写在xml里,如果程序员需要自己编写SQL语句的话,或者是对SQL语句的修改,优化这方面的话,那么使用MyBatis会比较方便。

4、  应用场景:

           Hibernate适用需求变化不多的中小型项目,比如:后台管理系统,erp,orm,oa等

           MyBatis适用需求变化较多的项目(大型项目),比如:互联网项目。

posted @ 2018-04-13 21:48  毫无代价  阅读(616)  评论(0)    收藏  举报