連線池技術複習(一)

2021-08-22 03:27:01 字數 2332 閱讀 4414

dbcp和c3p0

首先用起來,使用步驟:

1) 引入jar檔案

commons-dbcp-1.4.jar   連線池的實現

commons-pool-1.5.6.jar     連線池實現的依賴庫

2) 建立核心類:basicdatasource

basicdatasource datasouce = new basicdatasource();

3) 配置連線池引數:初始化連線數,最大連線數,連線字串,驅動,使用者,密碼

datasouce.seturl("jdbc:mysql:///jdbc_demo");                           //資料庫連線字串

datasouce.setdriverclassname("com.mysql.jdbc.driver");    //資料庫驅動

datasouce.setusername("root");        //資料庫連線使用者

datasouce.setpassword("root");        //資料庫連線密碼

datasouce.setinitialsize(3);                // 初始化連線

datasouce.setmaxactive(6);              // 最大連線

datasouce.setmaxidle(3000);            // 最大空閒時間

4) 獲取連線

connection con = datasouce.getconnection();

5)執行sql

con.preparestatement("delete from student where id=1").executeupdate();

6)關閉

con.close();

以上只是最基本的實現,在實際專案中,我們基本採用配置檔案的方式,如下:

public class dbcp_test 

}

其中,db.properties如下:

url=jdbc:mysql:///jdbc_demo

driverclassname=com.mysql.jdbc.driver

username=zc

password=123456

initialsize=5

maxactive=10

maxidle=1000

首先用起來(spring框架中預設支援c3p0連線池技術),使用步驟:

1)引入jar檔案

c3p0-0.9.1.2.jar

2)建立核心工具類

combopooleddatasource datasource = new combopooleddatasource();

3)設定連線引數:url、驅動、使用者密碼、初始連線數、最大連線數

datasource.setjdbcurl("jdbc:mysql://localhost:3306/jdbc");

datasource.setdriverclass("com.mysql.jdbc.driver");

datasource.setuser("zc");

datasource.setpassword("123456");

datasource.setinitialpoolsize(5);

datasource.setmaxpoolsize(10);

datasource.setmaxidletime(1000);

4)從連線池物件中,獲取連線物件

connection con = datasource.getconnection();

5)執行更新

con.preparestatement("delete from student  where id=2").executeupdate();

6) 關閉

con.close();

以上只是最基本的實現,在實際專案中,我們基本採用配置檔案的方式,如下:

public class test 

}

//src下c3p0的配置檔案c3p0-config.xml 

- jdbc:mysql://localhost:3306/jdbc

com.mysql.jdbc.driver

zc123456510

1000

- jdbc:mysql://localhost:3306/jdbc

com.mysql.jdbc.driver

zc123456510

1000

java web連線池技術

連線池 負責管理,分配和釋放資料庫連線,它允許乙個應用程式重複使用乙個現有的資料連線,而不是重新建立乙個 需要注意的是,在取得連線的時候是從池子中第乙個獲取到的,那麼,問題是,當我們用完這個物件後,是否還和以前一樣直接將連線關閉呢?答案是不可以的,我們原先要做的是將用完的再放到池子當中,而如果直接的...

連線池技術 Connection Pooling

和資料庫建立乙個物理連線是乙個很耗時的任務,所以無論是ado.net還是j2ee都提供了乙個連線池的技術。乙個池其實就是乙個列表。在ado.net中,有乙個connection manager,它對每乙個connection string都管理著乙個可用連線的列表,這個列表就是connection ...

資料庫連線池技術 DBCP連線池 配置

最近遇到資料庫連線池配置問題,搜了很多資料對照著進行全域性配置都沒有解決。報的錯誤是 org.apache.tomcat.dbcp.dbcp.sqlnestedexception cannot create jdbc driver of class for connect url jdbc mysq...