关于JPA spec jar (javax.persistence.jar)的问题



我对官方 JPA 2.0 规范罐的罐子有一些问题 ( javax.persistence.jar
(通常也与 JPA 实现或应用程序服务器捆绑在一起,有时名称略有不同):

问题:

  1. 在哪里可以找到这个罐子的官方来源

  2. 这个罐子似乎有 2.0 和 2.0.1 版本。是否有任何更新日志/发行说明?

  3. 我意识到IBM WebSphere似乎使用了这个jar的修改版本。这是此 jar/JPA 规范的常规方法吗?有什么不同?


更新:

只是为了澄清:我不是在问实际的 JPA 实现,而是在问官方的 javax.persistence 类,这些类是二进制形式的 JSR/JPA 规范的一部分。

WebSphere 使用的是 OpenJPA 的

修改版本,它基本上是 OpenJPA 的代码,但具有 IBM 编码的增强功能。

    您无法获取源代码,但它们与OpenJPA
  1. 基本相同,因此对于大多数内容,您可以检查OpenJPA源代码
  2. IBM 没有为此提供更改日志,您可以查看 WebSphere 修订包中的更改,以尝试了解更改的内容,并将其与 OpenJPA 的官方更改日志相结合。
  3. 这是标准的,IBM 添加代码以使 OpenJPA 与 WebSphere 紧密协作,因此他们添加代码,这仍然符合规范,因此没有问题。

关于规格罐:

WebSphere 不使用 Oracle 制定的规范 Jar,而是使用 Apache (Apache Geronimo JSR-317 JPA 2.0)的规范实现。这就是为什么罐子不同。该规范不要求您使用 Oracle 实现的 jar。

EclipseLink 是 JPA 的参考实现。当你查看罐子的内容时,它显然来自eclipselink。

您可以在此处下载 eclipselink。最小捆绑包包含一个 jar,为 javax.persistence 提供源代码(以及其他内容)。

最新更新