gpt4 book ai didi

java - JPA : Is it possible to specify the JPA provider at run time?

转载 作者:行者123 更新时间:2023-12-01 15:19:07 25 4
gpt4 key购买 nike

我们需要在运行时根据系统属性选择 JPA 提供程序(Hibernate 或 EclipseLink)。

据我了解,提供程序名称必须在 persistence.xml 中给出,并且不能在代码中覆盖。如果未给出提供程序名称,则默认使用类路径中的第一个提供程序。另一种选择是使用 2 个不同的 persistence.xml 并根据系统属性的值加载其中一个。然而,这似乎也不可能( JPA using alternative "persistence.xml" )。

还有其他方法可以做到这一点吗?

最佳答案

事实证明,有一种简单的方法可以通过在 persistence.xml 中定义多个持久性单元(每个单元具有不同的提供程序名称)来实现此目的。

然后在运行时,在创建 EntityManagerFactory 时传递正确的持久性单元名称。

关于java - JPA : Is it possible to specify the JPA provider at run time?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11217033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com