我们有一个基于Java-Hibernate的Web应用程序,我们在其中处理PostgreSQL数据库。(它是一个包含多个模式的单个数据库。)
目前我们正面临可扩展性问题,因此我们决定将我们的架构拆分为多个数据库。
示例:
问题:
注意:如果有人可以为此提供教程/文档链接,那就太棒了。
类似问题:Hibernate using multiple databases
(我期待类似的答案,但没有多个cfg.xml :()
答案 0 :(得分:1)
好的,所以你的要求不是
只有一个hibernate配置文件
但是能够
在不停止服务器的情况下创建新的sessionFactory。
您引用的问题中的代码如下所示:
Configuration config = new Configuration().configure("<complete path to your cfg.xml file>");
SessionFactory sessionFactory = config.buildSessionFactory();
在获得sessionFactory之前,您可以先看到配置对象。在建立会话工厂之前,只需在代码中摆弄它:
Configuration config = new Configuration().configure("<complete path to your cfg.xml file>");
config.setProperty("datasource", new_datasource_to_the_new_database)
SessionFactory sessionFactory = config.buildSessionFactory();
"datasource"
密钥,以便覆盖它。构建新数据源,与当前构建新数据源的方式相同,指向新数据库。