【insigma】连接池的使用

public class DBConnection {
private static final String DRIVER = "org.gjt.mm.mysql.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/studentManagement";
private static final String USER_NAME = "root";
private static final String PASSWORD = "root";
private static boolean isUsePool = true;
private static DataSource ds;

static{
//1.加载驱动
try {
if(isUsePool){
ds = getDBCPPoolDS();
}else{
Class.forName(DRIVER);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

//得到连接
public Connection getConnection(){
Connection con = null;
try {
if(isUsePool){
con = ds.getConnection();
}else{
con = DriverManager.getConnection(URL, USER_NAME, PASSWORD);
}
} catch (SQLException e) {
e.printStackTrace();
}

return con;
}

//获得DBCP连接池的DataSource
private static DataSource getDBCPPoolDS(){
BasicDataSource ds = new BasicDataSource();

ds.setDriverClassName(DRIVER);
ds.setUrl(URL);
ds.setUsername(USER_NAME);
ds.setPassword(PASSWORD);

ds.setMaxActive(1000);
ds.setInitialSize(20);
ds.setMaxIdle(100000);

return ds;
}

//获得C3PO连接池的DataSource
private static DataSource getC3P0PoolDS(){
ComboPooledDataSource ds = new ComboPooledDataSource();

try {
ds.setDriverClass(DRIVER);
ds.setJdbcUrl(URL);
ds.setUser(USER_NAME);
ds.setPassword(PASSWORD);

ds.setMaxPoolSize(1000);
ds.setInitialPoolSize(20);
ds.setMaxIdleTime(100000);
} catch (PropertyVetoException e) {
e.printStackTrace();
}

return ds;
}

}


注:需要导入连接池所需要的jar包


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值