首先,我的配置是這樣的:
initialsize=1
minidle=1
maxidle=2
maxactive=20
#空閒鏈結是否驗證
testwhileidle=true
#進行校驗時
validationquery=select 1
#代表當connection用盡了,多久之後進行**丟失連線
maxwait=1000
#是否自動**超時連線
removeabandoned=true
#超時等待時間以毫秒為單位
removeabandonedtimeout=300
#是否在自動**超時連線的時候列印連線的超時錯誤
logabandoned=true
接著我們來看看此時資料庫的連線資訊:
只有兩個初始連線,在我查詢的時候,的確只要這兩個連線處於空閒狀態,就可以直接使用,但是,當我進行寫操作的時候,莫名其妙的就會生成新的連線,為了找到原因,我打算從getconnection這個方法入手,去**究竟,首先我找到了官網上的順序圖:
在borrowobject方法中,有這麼段邏輯:
if (config != null
&& config.getremoveabandoned()
&& (getnumidle() < 2)
&& (getnumactive() > getmaxactive() - 3) )
然後呼叫完方法,連線數還是保持。
jq應用總結(二)
這次說說進製轉換問題 因為jq是弱語言型別,所以你會發現,他會自動轉換進製,如當出現以0開頭的資料時,它就會出現自動八進位制轉十進位制 例 01111 八進位制 585 十進位制 情景分析 我有這麼乙個函式 資料是資料庫中取得的值01111 中呈現按道理來說是 getvalue 01111 但是事實...
連線池DBCP的使用
一,使用連線池dbcp,主要作用是 1,提高效能,給客戶帶來價值 2,控制併發,提公升安全性 threadlocal 二,連線池的使用步驟 導包 修改資料庫配置檔案db.propertis 重寫dbutil basicdatasourcefactory,basicdatasource db.prop...
DBCP的使用注意事項
dbcp是乙個應用非常廣泛的開源的資料來源,使用起來非常簡單,但是也還是有一些問題需要注意一下 1.使用資料來源時最好是通過乙個工廠的靜態方法建立datasource,避免建立多個資料來源。2.使用前需要向工程中匯入三個jar包,缺一不可 commons dbcp.jar commons colle...