https://www.cnblogs.com/woaixiaobai/p/6906815.html
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <property name="filters" value="stat" /> 連接池的最大數據庫連接數。設爲0表示無限制。一般把maxActive設置成可能的併發量就行了 <property name="maxActive" value="1000" /> 初始化大小 <property name="initialSize" value="10" /> 最大等待毫秒數, 單位爲 ms, 如果超過此時間將接到異常,設爲-1表示無限制 <property name="maxWait" value="60000" /> 最大等待(空閒)連接中的數量,設 0 爲沒有限制 <property name="maxIdle" value="100" /> 最小等待(空閒)連接中的數量 <property name="minIdle" value="10" /> 在空閒連接回收器線程運行期間休眠的時間值,以毫秒爲單位. 如果設置爲非正數,則不運行空閒連接回收器線程 <property name="timeBetweenEvictionRunsMillis" value="60000" /> 連接池中保持空閒而不被空閒連接回收器線程 ,回收的最小時間值,單位毫秒 <property name="minEvictableIdleTimeMillis" value="300000" /> SQL查詢,用來驗證從連接池取出的連接,在將連接返回給調用者之前.如果指定, 則查詢必須是一個SQL SELECT並且必須返回至少一行記錄 <property name="validationQuery" value="SELECT 'x'" /> 指明連接是否被空閒連接回收器(如果有)進行檢驗.如果檢測失敗, 則連接將被從池中去除. 注意: 設置爲true後如果要生效,validationQuery參數必須設置爲非空字符串 <property name="testWhileIdle" value="true" /> 指明是否在從池中取出連接前進行檢驗,如果檢驗失敗 則從池中去除連接並嘗試取出另一個. 注意: 設置爲true後如果要生效,validationQuery參數必須設置爲非空字符串 <property name="testOnBorrow" value="false" /> 指明是否在歸還到池中前進行檢驗 <property name="testOnReturn" value="false" /> 開啓池的prepared statement 池功能 <property name="poolPreparedStatements" value="true" /> <property name="maxPoolPreparedStatementPerConnectionSize" value="50" /> </bean>