我有一个没有 Spring 的 JPA Hibernate 应用程序,我需要连接到多个数据库(具有相同的结构)。
将为每个客户端创建数据库,并且必须使用相同的实体管理器。请我需要一些关于如何做到这一点的想法。我没有使用弹簧。我的应用程序使用 MySql、JPA2、Hibernate 和 JSF。
谢谢!
如果一切都相同,除了 dbname/username/pass,然后创建一个带有持久性单元的 persistence.xml,将所有静态的东西放在那里。
然后使用以下方法创建实体管理器:
javax.persistence.Persistence.createEntityManagerFactory(String persistenceUnitName, Map properties);
在地图中提供可变参数,如下所示:
properties.put("hibernate.connection.url", "jdbc:postgresql://127.0.0.1/test");
properties.put("hibernate.connection.username", "joe");
properties.put("hibernate.connection.password", "pass");