就我而言, 测试连接c3p0通过执行查询花费了太多时间
SHOW FULL TABLES FROM `xyz` LIKE 'PROBABLYNOT'
当我使用mysql连接器版本5.1.25时。有驱动程序支持JDBC 4。 因为我提到了一个链接 http://www.mchange.com/projects/c3p0/#configuring_connection_testing
提到
如果您使用的是肯定支持的JDBC驱动程序 新的(ish)JDBC 4 API,什么都不做。 JDBC 4 Connections包括一种方法 叫做isValid()应该实现快速,可靠 连接测试。默认情况下,c3p0将使用该方法 本。
所以我的问题是我是如何知道它是使用isvalid()方法以及当c3p0调用此方法时执行的查询。
答案 0 :(得分:5)
您显示的查询肯定来自c3p0缓慢的默认连接测试。
您使用的文档适用于最新版本的c3p0,0.9.5-pre8。您可能没有使用最新版本。 (我应该在文档中注明这一点。)
所以......要么升级到0.9.5-pre8(它的质量很高,非常接近发布),要么提供高效的preferredTestQuery
配置参数(SELECT 1
似乎适用于MySQL。)