標籤:user cte null 引入 mysq 效能 並發 table val
1、工程引入druid-1.1.2.jar包
2、修改spring-common.xml檔案
<!-- 1. 資料來源 : DruidDataSource--> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://127.0.0.1:3306/資料庫名稱?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull" /> <property name="username" value="帳號" /> <property name="password" value="密碼" /> <!-- 屬性類型是字串,通過別名的方式配置擴充外掛程式,常用的外掛程式有: 監控統計用的filter:stat日誌用的filter:log4j防禦sql注入的filter:wall --> <property name="filters" value="stat"/> <!-- 最大串連池數量 --> <property name="maxActive" value="100"/> <!-- 初始化時建立物理串連的個數。初始化發生在顯示調用init方法,或者第一次getConnection時 --> <property name="initialSize" value="1"/> <!-- 擷取串連時最大等待時間,單位毫秒。配置了maxWait之後, 預設啟用公平鎖,並發效率會有所下降,如果需要可以通過配置useUnfairLock屬性為true使用非公平鎖。 --> <property name="maxWait" value="60000"/> <!-- 最小串連池數量 --> <property name="minIdle" value="1"/> <!-- 配置間隔多久才進行一次檢測,檢測需要關閉的空閑串連,單位是毫秒 --> <property name="timeBetweenEvictionRunsMillis" value="60000"/> <!-- 配置一個串連在池中最小生存的時間,單位是毫秒 --> <property name="minEvictableIdleTimeMillis" value="300000"/> <!-- 用來檢測串連是否有效sql,要求是一個查詢語句。 如果validationQuery為null,testOnBorrow、testOnReturn、testWhileIdle都不會其作用。 --> <property name="validationQuery" value="SELECT ‘x‘"/> <!-- 建議配置為true,不影響效能,並且保證安全性。申請串連的時候檢測, 如果空閑時間大於timeBetweenEvictionRunsMillis,執行validationQuery檢測串連是否有效 --> <property name="testWhileIdle" value="true"/> <!-- 申請串連時執行validationQuery檢測串連是否有效,做了這個配置會降低效能 --> <property name="testOnBorrow" value="false"/> <!-- 歸還串連時執行validationQuery檢測串連是否有效,做了這個配置會降低效能 --> <property name="testOnReturn" value="false"/> </bean>
ssm 資料庫連接池配置