关于Hibernate和Java持久性API的建议

关于Hibernate和Java持久性API的建议,hibernate,Hibernate,我曾与EnterpiseJavaBeans 3.0合作。我刚开始冬眠 我知道每个供应商都必须实现Java持久性API 当您编写一个项目并且可以选择Hibernate时,应该只使用Hibernate,还是同时使用Java持久性API 我想听听你的建议。我会使用Hibernate的JPA实现。通过这种方式,您可以更改JPA实现并避免被锁定在Hibernate中。正如您在问题中所述,JPA只是一个规范,您必须选择一个实现,因此如果您想使用JPA,您没有选择余地,只能同时选择Hibernate和JPA,

我曾与EnterpiseJavaBeans 3.0合作。我刚开始冬眠

我知道每个供应商都必须实现Java持久性API

当您编写一个项目并且可以选择Hibernate时,应该只使用Hibernate,还是同时使用Java持久性API


我想听听你的建议。

我会使用Hibernate的JPA实现。通过这种方式,您可以更改JPA实现并避免被锁定在Hibernate中。正如您在问题中所述,JPA只是一个规范,您必须选择一个实现,因此如果您想使用JPA,您没有选择余地,只能同时选择Hibernate和JPA,除非您选择另一个实现。在纯Hibernate上使用JPA的好处是,您可以切换实现,因为您遵循的是规范。我在过去成功地将HibernateEntity管理器与JPA和Spring结合使用,并认为一旦建立了配置,它就相当简单了。教程和参考资料等资源可广泛用于此技术堆栈。您可以通过Maven获得Hibernate EntityManager,其依赖项如下

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>3.6.0.Final</version>
    </dependency> 

org.hibernate