定義:
C3P0是一個開源的JDBC連接池,目前使用它的開源項目有Hibernate,Spring等。
數據庫連接池的基本思想就是為數據庫連接建立一個“緩沖池”。預先在緩沖池中放入一定數量的連接,當需要建立數據庫連接時,只需從“緩沖池”中取出一個,使用完畢之后再放回去。我們可以通過設定連接池最大連接數來防止系統無盡的與數據庫連接。獲取一個連接,系統要在背后做很多消耗資源的事情,大多時候,創建連接的時間比執行sql語句的時間還要長。用戶每次請求都需要向數據庫獲得鏈接,而數據庫創建連接通常需要消耗相對較大的資源,創建時間也較長。
使用方法:
1.導入jar包:c3p0和mysql
2.配置xml文件
c3p0通過set方法進行配置
c3p0通過c3p0-config.xml文件進行配置
關於通過配置文件進行配置的話,
這邊需要把xml文件方法同src文件夾下,c3p0會掃描文件進行相關的配置。
在Maven依賴中要加入c3p0和mysql-connector-java依賴,版本號一定要寫。
廢話不多說,下面是c3p0-config.xml文件的代碼
是不是代碼簡潔了很多,所以在我們通常使用配置文件來創建數據庫的連接池。
c3p0常用配置參數介紹
在前面的c3p0的相關配置中,我們看到了c3p0的配置參數,這里我們介紹幾個常用的c3p0的配置參數
最基礎的參數配置:
driverClass : 數據庫驅動(比如mysql,或者oracle數據庫的驅動)
jdbcUrl: jdbc數據庫連接地址(例如jdbc:mysql://localhost:3306/zhanghanlun)
user:數據庫用戶名
password:和數據庫用戶名對應的數據庫密碼
基礎的參數配置
在這幾個參數中,idleConnectionTestPeriod、testConnectionOnCheckout和testConnectuonOnCheckin控制什么時候連接將被校驗檢測。automaticTestTable、connectionTesterClassName和perferedTestQuery控制連接將怎么樣被檢測。