繁体   English   中英

如何管理与动态创建的数据库的连接

[英]how to manage connections to dynamically created databases

我需要在我的Web应用程序中管理与多个数据库的连接。 以下是有关当前实施的事实:

1-我使用Tomcat

在运行时动态创建2-数据库(我使用的是mysql)

毫无疑问,拥有一个连接池来管理数据库连接是最佳选择。 由于数据库在应用程序启动时是未知的,因此我无法设置数据源并建立连接池。 (我在Tomcat中找不到创建动态连接池的方法:在运行时创建的连接池)。

我的问题是:我有什么其他选择可以有效地与多个数据库连接? (我没有自己实现连接池的经验)是否有任何可以与tomcat一起使用的库,并允许我在运行时建立到不同数据库的多个连接池? 如果不是,你建议我做什么而不是连接池? 我对这个问题相当新,所以如果我弄乱了概念,请纠正并指导我。

先感谢您。

MySQL JDBC驱动程序允许从连接URL中省略数据库名称,如下所示:

jdbc:mysql://localhost:3306

您只需要通过Connection#setCatalog()或直接在SQL查询中指定数据库。 另见其参考文档

如果未指定database ,则将建立连接而不使用默认数据库。 在这种情况下,您需要在Connection实例上调用setCatalog()方法,或者在SQL中使用数据库名称(即SELECT dbname.tablename.colname FROM dbname.tablename... )完全指定表名。 不指定在连接时使用的数据库通常仅在构建使用多个数据库(例如GUI数据库管理器)的工具时才有用。

这允许您在Tomcat中创建单个且可重复使用的连接池数据源。 您可能只需要重写连接管理器和/或SQL查询。

在open中有足够的连接池框架。 Proxool绝对是最好的。 它非常灵活且易于使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM