java - 为什么在 spring data jpa starter 中 javax.persistence-api 被 jakarta.persistence-api 替换?

标签 java hibernate spring-boot jpa spring-data-jpa

最近开始学习spring boot,data jpa。正如我从 this 中看到的,spring boot data jpa starter使用jakarta.persistence-api而不是javax.persistence-api :

   <artifactId>spring-boot-starter-data-jpa</artifactId>
   ...
   <dependencies>
      <dependency>
         <groupId>jakarta.persistence</groupId>
         <artifactId>jakarta.persistence-api</artifactId>
      </dependency>

      <dependency>
         <groupId>org.hibernate</groupId>
         <artifactId>hibernate-core</artifactId>
         <exclusions>
            <exclusion>
               <groupId>javax.persistence</groupId>
               <artifactId>javax.persistence-api</artifactId>
            </exclusion>
            ...
         </exclusions>
      </dependency>
   </dependencies>

jakarta.persistence-api 之间有什么区别和javax.persistence-api ?这次更换的原因是什么?

最佳答案

来自Java Persistence API on Wikipedia :

The Java Persistence API (JPA), in 2019 renamed to Jakarta Persistence, is a Java application programming interface specification that describes the management of relational data in applications using Java Platform, Standard Edition and Java Platform, Enterprise Edition/Jakarta EE.

在 Oracle 开源 Java EE 并将权利授予 Eclipse 基金会后,法律要求他们更改 Java 的名称,因为 Oracle 拥有 Java 品牌的权利。 Jakarta 这个名字是由社区选择的。您可以通过阅读 Transition from Java EE to Jakarta EE 找到更多信息和 Jakarta EE - No Turning Back .

关于java - 为什么在 spring data jpa starter 中 javax.persistence-api 被 jakarta.persistence-api 替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60021815/

相关文章:

java - WSDL 中 SOAP 地址位置上的 JMS : What does it mean?

java - MonoTouch 性能与 Objective-C/Java

java - 是否可以为特定持久类提供多个映射?

c# - 无效的 Actor (检查您的映射属性类型不匹配)

spring - 如何在Spring Cloud Stream和Kafka中从同一主题发送和接收

本地项目源码包出现java.lang.NoSuchMethodError?

java - 如何防止GWT对话框被拖出屏幕?

java - spring中如何将事务设置在最底层,类似jdbc?

java - 使用 Spring Data JPA @LastModifiedDate 从审计中排除某些字段

spring-boot - 如何仅使用 Apache Shiro 进行授权?