MySQL jdbc 驱动程序是否内置了对数据库连接池的支持? (就像 Oracle 有 OracleDataSource 类)
我进行了彻底的搜索,但找不到任何内容。我知道我可以使用 dbcp 或 boneCp 等外部库,而且 tomcat 和 jboss 等应用程序服务器支持连接池。
但我很想知道 MySQL 是否有自己的连接池实现。
提前致谢。
最佳答案
JDBC specification (具体参见第 68 页)支持连接池,因此任何现代驱动程序都具有该功能。但是,JDBC 驱动程序的目的不是维护它们自己的连接池;所以无论你使用 MySQL Connector/J或Oracle驱动,还需要应用服务器或第三方库提供的连接池实现。
当然,除非您想尝试 rolling your own . o.O
相关的JDBC接口(interface)是javax.sql.ConnectionPoolDataSource和 javax.sql.PooledConnection .
在latest MySql driver ,对应的实现类是MysqlConnectionPoolDataSource
和MysqlPooledConnection
(都在包com.mysql.jdbc.jdbc2.optional中)。你可能会发现 these code examples有趣 - 他们使用一个名为 MiniConnectionPoolManager 的类作为连接池实现。
关于java - 连接池的MySQL实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27443992/