我对官方 JPA 2.0 规范罐的罐子有一些问题 ( javax.persistence.jar
)
(通常也与 JPA 实现或应用程序服务器捆绑在一起,有时名称略有不同):
问题:
-
我在哪里可以找到这个罐子的官方来源?
-
这个罐子似乎有 2.0 和 2.0.1 版本。是否有任何更新日志/发行说明?
-
我意识到IBM WebSphere似乎使用了这个jar的修改版本。这是此 jar/JPA 规范的常规方法吗?有什么不同?
更新:
只是为了澄清:我不是在问实际的 JPA 实现,而是在问官方的 javax.persistence
类,这些类是二进制形式的 JSR/JPA 规范的一部分。
修改版本,它基本上是 OpenJPA 的代码,但具有 IBM 编码的增强功能。
- 您无法获取源代码,但它们与OpenJPA
- 基本相同,因此对于大多数内容,您可以检查OpenJPA源代码 。
- IBM 没有为此提供更改日志,您可以查看 WebSphere 修订包中的更改,以尝试了解更改的内容,并将其与 OpenJPA 的官方更改日志相结合。
- 这是标准的,IBM 添加代码以使 OpenJPA 与 WebSphere 紧密协作,因此他们添加代码,这仍然符合规范,因此没有问题。
关于规格罐:
WebSphere 不使用 Oracle 制定的规范 Jar,而是使用 Apache (Apache Geronimo JSR-317 JPA 2.0)的规范实现。这就是为什么罐子不同。该规范不要求您使用 Oracle 实现的 jar。
EclipseLink 是 JPA 的参考实现。当你查看罐子的内容时,它显然来自eclipselink。
您可以在此处下载 eclipselink。最小捆绑包包含一个 jar,为 javax.persistence 提供源代码(以及其他内容)。