Java Persistence API

Yat*_*oel 6 java jpa

我是Java Persistence API的新手.我刚刚学会了它,现在想在我的Java桌面应用程序中使用它.但我有以下问题:

Q1.哪个JPA实现的大小最小(因为我希望我的应用程序的大小尽可能小)?

Q2.如何<provider>persistence.xml文件中查找标记的值.我知道它的价值是供应商特定的,但我找不到从这里下载的JPA实现的价值.

Pas*_*ent 5

Q1.哪个JPA实现的大小最小(因为我希望我的应用程序的大小尽可能小)?

对于JPA 1.0:

  • Hibernate实体管理器3.4.0.GA:~4.9MB
  • EclipseLink 1.1.3:~4.7MB
  • OpenJPA 1.2.2:~2.7MB(我不确定这个,现在没有测试,所以我可能会遗漏一些罐子)

我会远离TopLink Essentials.

对于JPA 2.0:

  • DataNucleus 2.0.3:~3.7MB
  • EclipseLink 1.2和2.0+:~4.8MB
  • Hibernate实体管理器3.5.0-最终:~5.8MB
  • OpenJPA 2.0.0-beta3:未测量(仍处于测试阶段)

这些措施已在我的宠物项目上完成(包括JDBC驱动程序以外的依赖项).就个人而言,即使对于桌面应用,我也不会仅根据尺寸选择.

Q2.如何在persistence.xml文件中查找标记的值.

  • DataNucleus将: org.datanucleus.jpa.PersistenceProviderImpl
  • 的EclipseLink: org.eclipse.persistence.jpa.PersistenceProvider
  • 休眠: org.hibernate.ejb.HibernatePersistence
  • OpenJPA的: org.apache.openjpa.persistence.PersistenceProviderImpl
  • TopLink Essentials: oracle.toplink.essentials.PersistenceProvider