请考虑这样一个场景:
(1)有一个全局数据库A,包括两张表:Users、Configs。
(2)表Users有三列:UserId、UserName、UserPass。
(3)Table Configs 有六列:Id,UserId,Host,Port,DBUser,DBPass。
(4)还有一个数据库user_A,包含很多表。
当user_A登录时,应用程序会通过数据库中的Users表检查用户的密码,然后从数据库A中的Configs表中获取用户_A的数据库连接字符串。其余操作均基于数据库User_A。
另外,当用户登录时,没有对应的数据库,应用程序应先创建对应的数据库。
如何实现?我使用的是struts2+spring+hibernate。
我将非常感谢您的回答:)
最佳答案
我们在系统中使用了多个数据源,但是它们被硬编码在 XML 文件中。据我记得我们的方法与此类似:
http://forum.spring.io/forum/spring-projects/data/93914-dynamic-datasources-at-runtime
我还发现了这个例子。也许它会对你有所帮助。
http://www.jvmhost.com/articles/create-drop-databases-dynamically-java-jsp-code
关于java - 通过hibernate动态创建和切换数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34993379/