您的位置 首页 java

编程小TIPS:JPA 3只是改了个包名?

JPA 3在2020年已经发布了。但主流用的比较多的仍然是JPA 2.2

与JPA 2.2相比,3.0几乎没有任何实质性的功能上的更新,而只是做了一件事情,那就是“修改了下JPA的包名”

JPA 3.0的最大也是几乎唯一变动的地方,就是将JPA的类的包名发生了变更,还有就是xml配置文件中的namespaces发生变更

包名变更

 //从javax.persistence
import javax.persistence.*;
//变更为jakarta.persistence
import jakarta.persistence.*;  

XML namespaces变更

 

<!-- 变更为 -->

  

为什么

因为JPA做为JavaEE中的一个重要功能,Oracle公司在JavaEE 8之后,决定将其捐献给Eclipse基金会运作。

在捐献时,Oracle附带了一个要求:

不能使用原包名,必须以新的名称取代

于是JPA在3.0之后,变成了 Jakarta Persistence ,当然它的包名等一些地方也需要做出相应的修改。

是的,这就是全部的原因。

而且你会发现,已经没有Java EE9了。只有Jakarta EE 9

谁支持了JPA 3.0

以下实现支持了JPA 3

DataNucleus (from version 6.0)

EclipseLink (from version 3.0)

Hibernate (from version 5.5)

当然,相信大多数的程序员们用的可能是Spring Data Jpa,或者就是直接的Hibernate了。

那你知道Spring Data JPA,Hibernate以及JPA之间究竟是个什么关系?

下次再聊。

文章来源:智云一二三科技

文章标题:编程小TIPS:JPA 3只是改了个包名?

文章地址:https://www.zhihuclub.com/180216.shtml

关于作者: 智云科技

热门文章

网站地图