C3P0簡介

Eternallyc發表於2018-06-07

1.c3p0是什麼?

    答:c3p0是一個庫。它擴充套件了傳統的jdbc資料庫連線池,並且支援JDBC3規範和JDBC2的標準擴充套件。

2.為什麼使用c3p0?

    答:首先,c3p0是一種jdbc資料庫連線池。那麼為什麼使用資料庫連線池呢?因為資料庫連線是一種關鍵的、有限的、昂貴的資源。傳統的模式(如傳統的java web專案中,servlet的beans中建立資料庫連線),每次連線都需要驗證使用者,消耗了大量的時間和資源。而資料庫連線池在系統初始化的時候,將資料庫連線作為物件儲存在記憶體中,當使用者需要訪問資料庫時,並非建立一個新的連線,而是從連線池中取出一個已經建立的空閒連線物件。使用完畢後,使用者不關閉連線,而是將資料庫連線物件放回連線池中。資料庫連線池管理資料連線的建立、斷開,同時監視資料庫連線數量和使用情況。使用資料庫連線池會顯著提高整個應用程式的伸縮性(大大提高了連線數量)和健壯性(能夠應對大量使用者頻繁連線資料庫,減少系統資源的消耗),提高應用程式的效能指標。