簡體   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