MySQL Poolconnection

时间:2018-01-21 16:06:39

标签: java mysql jdbc

MysqlDataSource source = new MysqlDataSource();
source.setURL(properties.getString("url"));
source.setUser(properties.getString("user"));
source.setPassword(properties.getString("password"));

如何在池连接中设置最小和最大连接数? 喜欢这里

BasicDataSource dataSource = new BasicDataSource();

dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUsername("username");
dataSource.setPassword("password");
dataSource.setUrl("jdbc:mysql://<host>:<port>/<database>");
dataSource.setMaxActive(10);
dataSource.setMaxIdle(5);
dataSource.setInitialSize(5);

2 个答案:

答案 0 :(得分:2)

com.mysql.jdbc.jdbc2.optional.MysqlDataSource是一个简单的javax.sql.DataSource实现,它只用作连接的简单工厂,它不提供连接池。

MySQL Connector / J驱动程序不提供任何提供连接池的数据源。根据名称判断,您可能认为MysqlConnectionPoolDataSource是一个,但它只是连接池使用的工厂,它本身不是连接池。

如果您需要连接池,请使用连接池库,例如Apache DBCP(在第二个示例中提供BasicDataSource),HikariCP或c3p0。

答案 1 :(得分:0)

您必须将其放在连接字符串中:"jdbc:mysql://localhost:3306/test?max-connections=100..."