Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate JPA注释=EJB3注释=休眠注释?_Hibernate_Jpa_Annotations_Ejb 3.0_Jboss Tools - Fatal编程技术网

Hibernate JPA注释=EJB3注释=休眠注释?

Hibernate JPA注释=EJB3注释=休眠注释?,hibernate,jpa,annotations,ejb-3.0,jboss-tools,Hibernate,Jpa,Annotations,Ejb 3.0,Jboss Tools,我正在使用JBoss工具将DB模式反向工程到POJO中。具体来说,我在hibernatetool ANT任务中使用hbm2java选项。在hbm2java选项下,您可以指定ejb3=true 在POJO中生成EJB3(JPA?)注释。我的问题是这些注释是否是JPA注释?或者,更一般地说,JPA注释、Hibernate注释和EJB3注释之间的区别是什么。它们本质上是相同的吗?JPA(Java持久化API)注释声明了Java类应该如何持久化到数据库中。Hibernate注释是JPA的一个实现,外加一

我正在使用JBoss工具将DB模式反向工程到POJO中。具体来说,我在hibernatetool ANT任务中使用hbm2java选项。在hbm2java选项下,您可以指定
ejb3=true

在POJO中生成EJB3(JPA?)注释。我的问题是这些注释是否是JPA注释?或者,更一般地说,JPA注释、Hibernate注释和EJB3注释之间的区别是什么。它们本质上是相同的吗?

JPA(Java持久化API)注释声明了Java类应该如何持久化到数据库中。Hibernate注释是JPA的一个实现,外加一些特定于Hibernate框架的额外注释。EJB(EnterpriseJavaBeans)注释独立于JPA,用于描述EJB框架内业务逻辑的更一般方面(事务、并发性、安全性等)

当使用ejb3=true时,工具中的hbm2java选项具体生成了什么?生成的注释看起来像Hibernate/JPA注释,并且导入的都是javax.persistence.*?更正:Hibernate注释只是。。。Hibernate特定注释;它们不是JPA的实现。JPA注释都在javax.persistence中。如果您希望与标准兼容且独立于实现(也称为一件好事),请使用JPA注释,简单如此。如果“Hibernate注释”的意思是“org.Hibernate.annotations.*”,那么DataNucleus是正确的。我把它理解为可以用来与Hibernate系统交互的注释。Hibernate本身提供了JPA的一个实现。@OrangeDog,是的,是为名为“Hibernate注释”的项目提供的。JPA显然都是由持久性api提供的。jar@DataNucleus好的,我昨晚自己也做了一些研究,发现基本上是一样的。我想我在我的OP中还不够清楚,但我是在专门讨论JPA注释(与Hibernate框架注释相比)。JBoss工具可以在从模式对POJO进行反向工程时为您创建这些注释。该选项是hbm2java任务中的ejb3,显然参考了作为ejb3规范一部分的JPA规范。