persistence.xml 中的持久性单元是在构建应用程序期间创建的。由于我想在运行时更改数据库url,有什么方法可以在运行时修改持久化单元吗?我应该在分发后使用除预绑定数据库之外的不同数据库。
我正在使用 EclipseLink (JPA 2.1)
保持持久性单元文件 (Persistence.xml) 不变。您可以按如下方式覆盖其中的属性。
EntityManagerFactory managerFactory = null;
Map<String, String> persistenceMap = new HashMap<String, String>();
persistenceMap.put("javax.persistence.jdbc.url", "<url>");
persistenceMap.put("javax.persistence.jdbc.user", "<username>");
persistenceMap.put("javax.persistence.jdbc.password", "<password>");
persistenceMap.put("javax.persistence.jdbc.driver", "<driver>");
managerFactory = Persistence.createEntityManagerFactory("<current persistence unit>", persistenceMap);
manager = managerFactory.createEntityManager();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)