问题描述
我有来自 6 台不同机器的 6 个数据库,并且有一台云服务器。它将在用户登录时决定应用程序将使用哪个数据库。
我能够连接单个数据库。但我不知道如何处理数据库的动态名称。
更新:
我能够动态更改数据库,但出现了一个问题。只有一个通用数据库(放置在云服务器上)中有一些存储过程(我有限制,无法将存储过程添加到所有数据库),因此我无法调用任何其他数据库的存储过程。我怎样才能打电话?
请给我一些想法。
最佳答案
在 Spring 中,有一个名为 AbstractRoutingDataSource
的类,它可以满足您的要求,浏览文档您会找到一些有关如何实现该类的具体类的帮助,您需要更改(或添加)现有代码的某些部分,以便配置动态数据源
。 This blog来自 spring 源代码正在解释这一点。
关于java - 如何在 Spring Hibernate 运行时设置数据库名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10756346/