0

问题描述

我有来自 6 台不同机器的 6 个数据库,并且有一台云服务器。它将在用户登录时决定将在应用程序中使用哪个数据库。

我能够连接单个数据库。但我不知道处理数据库的动态名称。

更新:

我能够动态更改数据库,但一个问题正在发生。只有一个数据库中有一些存储过程是常见的(放置在云服务器上),(我有不能将存储过程添加到所有数据库的限制),所以我无法为任何其他数据库调用存储过程。我怎么打电话?

请给我一些想法。

4

2 回答 2

3

在 Spring 中有一个名为的类AbstractRoutingDataSource,它将满足您的要求,通过文档,您将找到一些有关如何实现该类的具体类的帮助,您需要更改(或添加)现有代码的某些部分以配置动态Data source。这个来自 spring 源的博客正在解释这一点。

于 2012-05-25T14:50:36.080 回答
1

这个 Java Ranch 论坛主题解释了如何做到这一点。它向您展示了如何在运行时更改用户名/密码,但我想更改部分连接字符串或其他任何内容将是相同的模式。

http://www.coderanch.com/t/489984/ORM/java/modify-hibernate-cfg-xml-at

于 2012-05-25T14:51:04.667 回答