【发布时间】:2013-03-13 09:04:58
【问题描述】:
我想从独立应用程序连接到 MySQL 数据库。没有应用程序/Web 服务器。
这个page 建议我应该使用DriverManager 来创建连接。但是this 页面表明从 DriverManager 创建的连接不能被池化。
但是连接池对我来说是必须的,因为应用程序使用各种线程同时写入数据库,因此关闭/重新创建连接并不是最佳选择。
我应该为此使用哪个 DataSource 实现? 我查看了MysqlConnectionPoolDataSource,但我不确定它是否真的实现了连接池。我还查看了 Tomcat DataSource,我确信它实现了一个连接池,但我不确定它是否可以在 Tomcat 之外使用。
当我关闭独立应用程序时,我应该怎么做才能正确释放连接/池?
编辑:看起来 Tomcat 数据源是来自独立应用程序的usable,所以我将使用它。它还有一个 close 方法,我认为它会释放连接。
【问题讨论】:
-
查看 C3P0 或 BoneCP 的第 3 方连接池,无论您使用的是什么数据库。
-
感谢您的建议。我会记住这些以备将来使用
-
A
ConnectionPoolDataSource不是连接池,它可以由提供池的“普通”DataSource使用。
标签: java mysql jdbc database-connection connection-pooling