3

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

问题:

  1. 我在哪里可以找到这个 jar的官方 来源?

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

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


更新:

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

4

2 回答 2

1

WebSphere 使用的是 OpenJPA 的修改版本,它基本上是 OpenJPA 的代码,但在 IBM 中编码了增强功能。

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

关于规格罐:

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

于 2012-12-06T05:13:32.560 回答
0

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

您可以在此处下载 eclipselink 。最小的捆绑包包含一个 jar,提供 javax.persistence 的源(除其他外)。

于 2012-12-06T13:25:04.787 回答