Java sun jdk附带的jpa实现是什么
请回答一些问题:Java sun jdk附带的jpa实现是什么,java,hibernate,jpa,Java,Hibernate,Jpa,请回答一些问题: Sun JDK附带的JPA实现是什么(例如7) 如果我的应用程序运行在应用程序服务器上(例如JBoss,我知道它使用Hibernate实现),那么实际的实现是什么呢?是JDK还是Hibernate JPA不是一个实现,只是一个接口。Hibernate是一个JPA实现。问题是,如果您将代码耦合到JPA,而不是直接使用Hibernate,那么您可以用(值得怀疑的)更少的工作转移到另一个JPA实现 因此,1)据我所知,JDK没有附带JPA实现,2)您将使用hibernate,但请考虑
JPA不是一个实现,只是一个接口。Hibernate是一个JPA实现。问题是,如果您将代码耦合到JPA,而不是直接使用Hibernate,那么您可以用(值得怀疑的)更少的工作转移到另一个JPA实现 因此,1)据我所知,JDK没有附带JPA实现,2)您将使用hibernate,但请考虑上面关于耦合的评论 看看这个相关的问题,以澄清什么是JPA以及什么是可用的JPA实现:。不是一个实现,而是一个规范或接口 Hibernate是一个JPA提供者 JPA是一种用于访问、持久化和管理Java对象与关系数据库之间数据的规范。正如定义中所说的API,它只是规范。该API没有实现。JPA为开发遵循标准的接口指定了一套规则和指南。直截了当地说:JPA只是实现对象关系映射(ORM)的指导原则,没有实现的底层代码。其中,Hibernate是JPA指南的实际实现。当hibernate实现JPA规范时,JPA小组将在遵循规范中提到的所有标准后对此进行认证。例如,JPA指南将提供作为JPA实施一部分实施的强制性和可选功能的信息 要回答第二个问题,您可以选择使用哪种ORM工具。1)JDK既不提供JPA,也不提供任何特定的JPA提供商 2) 如果在JBoss上运行应用程序,默认情况下将使用Hibernate(它是JBoss模块)。当然,您可以使用您想要的任何JPA提供程序(通过在
persistence.xml
中指定它并部署提供程序实现JAR)