druid數據源配置


<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="url" value="${datasource.url}" />
<property name="username" value="${datasource.name}" />
<property name="password" value="${datasource.password}" />
<property name="connectionProperties" value="config.decrypt=true" />
<property name="filters" value="config,log4j" />
<property name="maxActive" value="${datasource.maxActive}" />
<property name="initialSize" value="${datasource.initialiSize}" />
<property name="maxWait" value="60000" />
<property name="minIdle" value="1" />
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<property name="minEvictableIdleTimeMillis" value="300000" />
<property name="validationQuery" value="SELECT 'x' from dual " />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
</bean>

connectionProperties:配置連接的一些屬性,這里配置的config.decrypt=true,表示提供的密碼是加密過的

filters:就是一個攔截器,可配置監控、日志等

maxActive:最大連接數個數

initialSize:初始化連接數個數

minIdle:空閑的連接數個數

maxWait:獲取連接最大等待時間

timeBetweenEvictionRunsMillis:檢測連接時間,單位毫秒

minEvictableIdleTimeMillis:檢測未關閉連接大於該值則關閉連接,單位毫秒

validationQuery:系統啟動時通過該sql語句驗證數據庫是否可用,例如oracle用SELECT 'x' from dual,mysql用SELECT 'x' 

testWhileIdle:啟用空閑連接檢測,以便回收

testOnBorrow:從連接池獲取連接時,是否檢測連接可用性,開啟性能會有些許影響

testOnReturn:釋放連接到連接池時,是否檢測連接可用性,開啟性能會有些許影響

poolPreparedStatements:開啟psCache緩存,oracle請設置為true,非oracle請設置為false

maxPoolPreparedStatementPerConnectionSize:最大緩存數,非oracle請設置為0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM