如何设置MySQLDataSource的池大小?

时间:2014-10-19 01:32:29

标签: java mysql

我是JavaSE用户,编写不使用Tomcat或Glassfish的独立Web服务器。

MySQL Connector / J(http://dev.mysql.com/doc/connector-j/en/connector-j-overview.html)似乎没有提供示例。

提前致谢。

1 个答案:

答案 0 :(得分:0)

最后我切换到了Apache DBCP,它的示例代码没有提供信息,因此我将我的代码保留在这里供将来参考。

ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(
            String.format("jdbc:mysql://%s:%d/%s", host, port, db), null);
PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(
            connectionFactory, null);
GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
poolConfig.setMaxTotal(100);
ObjectPool<PoolableConnection> connectionPool = new GenericObjectPool<>(
        poolableConnectionFactory, poolConfig);
poolableConnectionFactory.setPool(connectionPool);
PoolingDataSource<PoolableConnection> dataSource = new PoolingDataSource<>(
        connectionPool);
return dataSource;

DBCP测试代码比其示例(https://github.com/apache/commons-dbcp/blob/trunk/src/test/java/org/apache/commons/dbcp2/TestPoolingDriver.java

更具信息性