不同jpa比较

版权声明:转载请标明出处 https://blog.csdn.net/wobushixiaobailian/article/details/89015684


通过本博客,你可以知道:

  1. 什么是jpa
  2. 不同的jpa provider(Hibernate、EclipseLink、OpenJPA、TopLink)的区别。

一、什么是jpa

jpa是一个在数据库和java 对象之间用于获取、持久化、管理数据的规范。个人理解就是将java对象和数据库记录映射起来,便于直观的操作数据库。

源自:维基百科
The Java Persistence API (JPA) is a Java specification for accessing, persisting, and managing data between Java objects / classes and a relational database

由于jpa是一个规范,那么就有对这个规范的实现。有四种对jpa的实现:

  1. Hibernate
  2. EclipseLink
  3. OpenJPA
  4. TopLink

二、不同的jpa provider(Hibernate、EclipseLink、OpenJPA、TopLink)的区别

参考文献: JPA implementations comparison: Hibernate, Toplink Essentials, Openjpa, Eclipselink

下面是在30分钟内对不同jpa的测试:
在这里插入图片描述
由此可见:

  1. hibernate 在插入时很快,但查询时最慢,在内存方面也是占用最多的。
  2. 不同jpa中,查询最快的是TopLink(不过这些jpa的查询速度都差不多)
  3. 对内存占用最少的是TopLink

所以,个人选择还是使用Hibernate

结论

对于不同的jpa的选择,选择Hibernate.

参考文献

  1. Java Persistence/What is JPA?
  2. JPA implementations comparison: Hibernate, Toplink Essentials, Openjpa, Eclipselink

猜你喜欢

转载自blog.csdn.net/wobushixiaobailian/article/details/89015684
今日推荐