java - Persistence.createEntityManagerFactory() 在哪里寻找持久性单元?

标签 java eclipse hibernate jpa persistence

我正在使用 eclipse 。我正在尝试调试未能找到确实位于我的 eclipse 项目目录结构中的持久性单元。

EntityManagerFactory javax.persistence.Persistence.createEntityManagerFactory(String persistenceUnitName, Map properties) 在哪里寻找持久化单元?

当我问它看起来在哪里时,我的意思是可以搜索的所有可能资源,包括 eclipse 配置、persistence.xml 中的属性(如果找到文件)、包含的 JAR 搜索的资源等。要探索它是如何工作的,我正在通过右键单击位于 eclipse 项目的根目录 (src/main/java) 中的 Main.java 类来执行测试程序。

答案可能会帮助我弄清楚如何配置 eclipse 项目,以便 EntityManagerFactory javax.persistence.Persistence.createEntityManagerFactory(String persistenceUnitName, Map properties) 可以找到持久性单元。

最佳答案

它搜索位于 META-INF 目录中的 persistence.xml。此文件夹必须与您的根包处于同一级别。

在 Maven 项目中,该文件夹位于/src/main/resources/META-INF/persistence.xml

关于java - Persistence.createEntityManagerFactory() 在哪里寻找持久性单元?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26367983/

相关文章:

java - 如何在 Eclipse Java 程序中找到未运行的代码?

java - 自动生成标题

java - 原生sql查询如何将字段绑定(bind)到实体而不是映射

java - 删除包含某个字母的字符串的 JTable 行

hibernate - DELETE_ORPHAN 和 DELETE 有什么区别?

java - Hibernate:覆盖子类中的字段可选性

java - 如何在java中将括号内的代码分组为一个单元

java - 将 JSON 解码为具有不同字段类型 jackson 的子类型

java - 编码Bat sum数字

java - 在 Lucene 4 索引中获取术语计数