java - Hibernate over JPA 配置 xml 文件

标签 java xml hibernate jakarta-ee jpa

我知道可以通过以下两种方式配置 Hibernate:

  1. hibernate.cfg.xml

  2. persistence.xml - JPA - 具有特定的 hibenate 配置 当您像这样添加提供者时:

    org.hibernate.ejb.HibernatePersistence

但是,我不明白什么时候应该使用哪个? 正确的行为应该是什么? 谢谢!

最佳答案

当您想在项目中使用 Hibernate 时,可以使用 hibernate.cfg.xml。当您创建不同的查询(SELECT、INSERT 等)时,您将打开 session 。

Session session = sessions.openSession();

其中 session 是org.hibernate.Session的实例。 但正如您所看到的,我们需要 session 来创建 session 。 Sessions 是 org.hibernate.SessionSessionFactory 的实例。 SessionFactory 是具体数据库的全局工厂。 可以通过以下操作获取 session :

SessionFactory sessions = new Configuration().configure().buildSessionFactory();

其中new Configuration().configure().buildSessionFactory() - 解析hibernate.cfg.xml

Persistence.xml 包含在项目中使用 JPA 的设置。持久性单元在 persistence.xml 文件中定义,该文件必须位于类路径的 META-INF 目录中。一个 persistence.xml 文件可以包含一个或多个持久性单元的定义。在 JPA 中实例化 EntityManagerFactory 的可移植方法(如 JPA 概述部分中所述)需要持久性单元。

另请参阅:http://www.objectdb.com/java/jpa/entity/persistence-unit

关于java - Hibernate over JPA 配置 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23813779/

相关文章:

javascript - 在缩略图库中显示图像

java - 使用 Ebean 生成 "on delete cascade"

java - 给定一个对象,在 hibernate 中查询该对象所在列表的所有者的最有效方法是什么

java - 如何从参数请求的值迭代

java - 不满意的依赖异常 : Error creating bean with name 'userController' : Unsatisfied dependency

java - ProcessBuilder 在 do while 循环后打印空输出

xml - 将属性值转换为元素

java - 如何在java中从另一个列表中查找一个列表中的项目

java - 对该应用程序进行编程的更好方法是什么?

xml - 如何从 wso2 中的 xml 中检索元素的 namespace