資料庫連線池學習隨筆
由於頻繁連線和斷開資料庫,浪費系統資源,降低系統性能。因此實際開發中,從放置一定數量連線的資料庫連線池中獲取資料庫連線。
常見開源資料庫連線池有c3p0和dbcp兩種。
c3p0是某個國外大牛開發的資料庫連線池工具。dbcp由Apache基金組織開發。
Hibernate和Spring框架使用c3p0,Tomcat伺服器中使用dbcp。就穩定性和併發而言,c3p0優於dbcp。
所以下面談c3p0基於MySQL資料庫的使用。正式使用前先匯入c3p0的2個jar包。並在MySQL資料庫中建立mis資料庫。
專案src目錄下建立c3p0-config.xml,注意命名必須符合規範,不要問我為什麼這樣命名,它的開發者是這樣要求的。內容如下:
<c3p0-config>
<default-config>
<!-- 資料庫連線統一資源定位,通俗講就是資料庫完整路徑 -->
jdbc:mysql://localhost:3306/mis
<!-- 資料庫驅動字串-->
com.mysql.jdbc.Driver
<!-- 資料庫使用者名稱-->
root
<!-- 資料庫密碼-->
root
<!-- 初始資料庫連線數-->
6
<!-- 資料庫最大連線數-->
20
<!-- 資料庫連線最大空閒時間,以秒計算-->
60
測試類:
import java.sql.Connection;
import com.mchange.v2.c3p0.
ComboPooledDataSource;
public class TestConnect{
public static void main (String[] args)
throws Exception{
ComboPooledDataSource pool = new ComboPooledDataSource();
Connection conn = pool.getConnection();
System.out.println(conn);
}
}
執行該測試類,列印連線字串表示資料庫連線池連線成功。