对比JPA 和Hibernate 和 Mybatis的区别

Posted wanghj-15

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对比JPA 和Hibernate 和 Mybatis的区别相关的知识,希望对你有一定的参考价值。

1、JPA、Hibernate、Mybatis简单了解

  1.JPA:本身是一种ORM规范,不是ORM框架.由各大ORM框架提供实现.

  2.Hibernate:目前最流行的ORM框架,设计灵巧,文档丰富(完全自动操作),只是性能不好控制(自己去控制性能,不是很好控制)。

    Hibernate是一个完整的ORM框架,常规CRUD我们不需要写一句SQL;

  3.MyBatis:本是apache的一个开源项目iBatis,提供的持久层框架包括SQL Maps和Dao,允许开发人员直接编写SQL(更好灵活).(Sql操作方式)

    MyBatis 并不是一个完整的ORM框架,因为我们还需要自己去写全部SQL

 

2、JPA 和Hibernate 和 Mybatis的区别

  JPA:规范,各大ORM框架实现这个规范。可以自动建表。

  Hibernate:是完整的ORM,不需要我们写sql,框架比较重,学习成本比较高,性能不好控制,功能强大且文档丰富。

  Mybatis:不是完整的ORM,程序员需要自己去写全部的SQL,轻量级框架,学习成本低,性能好控制。不能自动建表。

 

ORM操作数据库关系映射的方式:

   1、通过配置文件,将domain和数据库中的表映射,将domain成员成员变量和表中的列映射。

以上是关于对比JPA 和Hibernate 和 Mybatis的区别的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis/Hibernate/Spring Data Jpa选型对比

Spring Data JPA MyBatis与Hibernate简单对比

比较JPA的EntityManager接口与Hibernate的Session接口

MyBatis对比Spring Data Jpa有啥优势

hibernate 和eclipselink的区别

JPA和Hibernate的关系