前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编程小TIPS:JPA 3只是改了个包名?

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

作者头像
御剑
发布2021-12-20 13:38:29
8410
发布2021-12-20 13:38:29
举报
文章被收录于专栏:微言码道

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

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

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

包名变更

代码语言:javascript
复制
//从javax.persistence
import javax.persistence.*;
//变更为jakarta.persistence
import jakarta.persistence.*;

XML namespaces变更

代码语言:javascript
复制
http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/orm
<!-- 变更为 -->
https://jakarta.ee/xml/ns/persistence
https://jakarta.ee/xml/ns/persistence/orm

为什么

因为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之间究竟是个什么关系么?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 微言码道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么
  • 谁支持了JPA 3.0
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档