Mr.*_*art 21 java hibernate ejb jpa
我知道这有说明:
Persistence.createEntityManagerFactory("persistence-unit-name");
Run Code Online (Sandbox Code Playgroud)
JPA持久性机制读取"persistence.xml"文件,查找名为"persistence-unit-name"的持久性单元,并基于它构造EntityManagerFactory.
我的问题是,如何强制JPA 采用与"persistence.xml"不同的文件?例如,"persistence-test.xml".
Sea*_*oyd 18
虽然单个JPA提供者可能提供一种方法,但没有标准化的JPA方法来实现这一点.我建议使用标准方法为main和test设置不同的类路径.
例如,如果您使用Maven,并且您有两个META-INF/persistence.xml文件,一个输入src/main/resources和一个输入src/test/resources,则测试将选择一个src/test/resources,因为Maven将测试类/资源放在类路径中的主类/资源之前.您可以轻松地将Ant配置为以类似方式工作.
如果您需要更高级的逻辑,请考虑使用Spring的JPA支持.它将让您处理高级情况,如集成多个persistence.xml文件.
Oli*_*ver 15
在EclipseLink中,您可以执行以下操作:
Properties pros = new Properties();
pros.setProperty(PersistenceUnitProperties.ECLIPSELINK_PERSISTENCE_XML,
"META-INF/persistence-alternative.xml");
EntityManagerFactory factory =
Persistence.createEntityManagerFactory("pu-name", pros);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32365 次 |
| 最近记录: |