1.前言
在以前一片文章中讲到封装DBUtils时,使用了静态连接来连接到MySQL数据库,这样做的确简单易于实现,但是不能针对大用户量的情况,并不是很实用。
下面比较一下使用静态连接,连接池,普通连接的三种方式,并给出比较的结果。
2.使用数据库连接池
1)建立连接池类:ConnectionPool.java
public class ConnectionPool {
private static ConnectionPool instance;
private static ComboPooledDataSource dataSource;
//私有构造方法
private ConnectionPool() throws PropertyVetoException{
dataSource = new ComboPooledDataSource();
dataSource.setUser("root");
dataSource.setPassword("root");
dataSource.setJdbcUrl("jdbc:mysql://10.1.40.61:3306/test_bid_system?useUnicode=true&characterEncoding=utf8");
dataSource.setDriverClass("com.mysql.jdbc.Driver");
//连接池初始化时的连接数
dataSource.setInitialPoolSize(5);
dataSource.setMinPoolSize(1);
dataSource.setMaxPoolSize(10);
dataSource.setMaxIdleTime(100);
dataSource.setAcquireIncrement(2);
dataSource.setAcquireRetryAttempts(30);
dataSource.setAcquireRetryDelay(1000);
//此处这样配置和在c3p0.properties中配置是等同的
}
//获取连接池实例
public static final ConnectionPool getInstance(){
if(inst