摘要:申請連接時(shí)執(zhí)行檢測連接是否有效歸還連接時(shí)執(zhí)行檢測連接是否有效建議配置為,不影響性能,并且保證安全性申請連接的時(shí)候檢測,如果空閑時(shí)間大于,執(zhí)行檢測連接是否有效。
Druid入門 Maven倉庫地址
手動(dòng)獲取連接com.alibaba druid 1.1.6
public class Driud { private static DruidDataSource druidDataSource = null; //在類加載時(shí)進(jìn)行初始化 static { Properties properties = new Properties(); try { properties.load(Driud.class.getResourceAsStream("/druid.properties")); druidDataSource = (DruidDataSource) DruidDataSourceFactory.createDataSource(properties); } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } public static Connection getConnection() throws SQLException { return druidDataSource.getConnection(); } }配置信息 總體配置
name=test driverClassName = com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test username=root password=overdose initialSize=5 maxActive=10 minIdle=3 maxWait=60000 removeAbandoned=true removeAbandonedTimeout=180 timeBetweenEvictionRunsMillis=60000 minEvictableIdleTimeMillis=300000 validationQuery=SELECT 1 testWhileIdle=true testOnBorrow=false testOnReturn=false poolPreparedStatements=true maxPoolPreparedStatementPerConnectionSize=50 filters=stat單個(gè)配置
配置 | 缺省值 | 解釋 |
---|---|---|
name | 當(dāng)存在多個(gè)數(shù)據(jù)源時(shí), 通過名字區(qū)分 | |
url | 連接數(shù)據(jù)庫的Url mysql: jdbc:mysql://localhost:3306/test oracle : jdbc:oracle:thin:@localhost:1521:ocnauto |
|
username | 連接數(shù)據(jù)庫的用戶名 | |
password | 連接數(shù)據(jù)庫的密碼 | |
driverClassName | 根據(jù)url自動(dòng)識別 | 可選的配置 druid會自動(dòng)根據(jù)url選擇對應(yīng)的驅(qū)動(dòng) |
initialSize | 0 | 初始化時(shí)創(chuàng)建連接的個(gè)數(shù) |
maxActive | 8 | 最大連接池?cái)?shù)量 |
沒用 詳見Druid常見問題 | ||
minIdle | 最小連接池?cái)?shù)量 | |
maxWait | 獲取連接時(shí)最大等待時(shí)間, 單位為毫秒, 缺省為公平鎖 公平鎖的簡單介紹 | |
poolPreparedStatements | 是否緩存preparedStatement, 也就是PSCache | |
maxPoolPreparedStatementPerConnectionSize | -1 | 每個(gè)連接上PSCache的大小 |
validationQuery | 用來檢測連接是否有效的sql,要求是一個(gè)查詢語句。 | |
testOnBorrow | true | 申請連接時(shí)執(zhí)行validationQuery檢測連接是否有效 |
testOnReturn | false | 歸還連接時(shí)執(zhí)行validationQuery檢測連接是否有效 |
testWhileIdle | false | 建議配置為true,不影響性能,并且保證安全性 申請連接的時(shí)候檢測,如果空閑時(shí)間大于timeBetweenEvictionRunsMillis,執(zhí)行validationQuery檢測連接是否有效。 |
timeBetweenEvictionRunsMillis | 間隔多久進(jìn)行一次檢測, 檢測需要關(guān)閉的空閑連接, 單位為毫秒 | |
minEvictableIdleTimeMillis | 一個(gè)連接在池中最小生存的時(shí)間,單位是毫秒 | |
connectionInitSqls | 連接初始化的時(shí)候執(zhí)行的sql | |
exceptionSorter | 根據(jù)dbType自動(dòng)識別 | 數(shù)據(jù)庫拋出一些不可恢復(fù)的異常時(shí),拋棄連接 |
filters | 通過別名的方式配置擴(kuò)展插件 |
連接池初始化時(shí)創(chuàng)建initialSize個(gè)連接, 取出連接時(shí), 先判斷有無空閑連接, 如果有空閑連接則返回, 否則再判斷當(dāng)前連接池是否等于maxActive, 如果等于maxActive, 則最多等待maxWait時(shí)間, 如果中途有連接被釋放則返回, 否則拋出異常. 如果不等于maxActive則建立一個(gè)新連接. 連接使用完畢后, 并不將其關(guān)閉, 而是放回連接池, 等待下一次獲取, 當(dāng)連接池連接數(shù)目小于minIdle, 則自動(dòng)補(bǔ)充連接
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/70940.html
摘要:看過的一些書上也是多數(shù)介紹了這兩種數(shù)據(jù)庫連接池,自己做的也是使用。參考資料文檔首頁文檔問題阿里學(xué)習(xí),號稱最好的數(shù)據(jù)庫連接池常用數(shù)據(jù)庫連接池配置說明學(xué)習(xí)整合,使用連接池使用和監(jiān)控配置數(shù)據(jù)源配置如果文章有錯(cuò)的地方歡迎指正,大家互相交流。 前言 本章節(jié)主要講解Druid數(shù)據(jù)庫連接池,為什么要學(xué)Druid數(shù)據(jù)庫連接池呢?? 我的知識儲備數(shù)據(jù)庫連接池有兩種->C3P0,DBCP,可是現(xiàn)在看起來并...
摘要:二環(huán)境準(zhǔn)備編譯器選擇這里我們使用進(jìn)行工作流開發(fā),雖然對于工作流的友好度不是很好,因?yàn)闀幸恍┬〉?,但是,對于的開發(fā)還是非常的好的。新建后出現(xiàn)下面的編輯頁面到現(xiàn)在,編輯插件就準(zhǔn)備好了。 文章源碼托管:https://github.com/OUYANGSIHA...歡迎 star ?。?! 一、前言 在上一節(jié)中我們對activiti進(jìn)行了基本的介紹activiti進(jìn)行了基本的介紹,同時(shí)介紹了...
摘要:前言由于寫的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 前言 由于寫的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 由于更新比較頻繁,因此隔一段時(shí)間才會更新目錄導(dǎo)航哦~想要獲取最新原創(chuàng)的技術(shù)文章歡迎關(guān)注我的公眾號:Java3y Java3y文章目錄導(dǎo)航 Java基礎(chǔ) 泛型就這么簡單 注解就這么簡單 Druid數(shù)據(jù)庫連接池...
摘要:多數(shù)據(jù)源,一般用于對接多個(gè)業(yè)務(wù)上獨(dú)立的數(shù)據(jù)庫可能異構(gòu)數(shù)據(jù)庫。這也就導(dǎo)致異構(gòu)數(shù)據(jù)庫的檢查也是類似問題。內(nèi)容略數(shù)據(jù)源多數(shù)據(jù)源,涉及到異構(gòu)數(shù)據(jù)庫,必須明確指定,否則的轉(zhuǎn)換出錯(cuò)取值內(nèi)容可參考初始連接數(shù)最大連接池?cái)?shù)量。 開篇之前,說一句題外話。多數(shù)據(jù)源和動(dòng)態(tài)數(shù)據(jù)源的區(qū)別。 多數(shù)據(jù)源,一般用于對接多個(gè)業(yè)務(wù)上獨(dú)立的數(shù)據(jù)庫(可能異構(gòu)數(shù)據(jù)庫)。 動(dòng)態(tài)數(shù)據(jù)源,一般用于大型應(yīng)用對數(shù)據(jù)切分。 配置參考 如...
閱讀 2906·2023-04-26 01:01
閱讀 3682·2021-11-23 09:51
閱讀 2514·2021-11-22 14:44
閱讀 3542·2021-09-23 11:57
閱讀 2826·2021-09-22 14:58
閱讀 5866·2021-09-10 11:25
閱讀 2100·2019-08-30 13:11
閱讀 1589·2019-08-30 12:59