連接池在java中的使用

 1. 在項目的實際開發中,連接數據庫一般都會使用兩種方式。

(1) 使用JDBC直接連接數據庫,其他程序每訪問一次數據庫,訪問程序直接跟數據庫打交道,建立一次數據庫連接,用完在釋放連接資源。

(2) 使用連接池技術,建立一個連接池,由連接池連接到數據庫,在將數據庫連接對象connection放到連接池中,此時其他程序訪問數據庫時,不是直接和數據庫打交道,而是和連接池交互,當使用完連接資源後釋放,該連接資源將會放回池裏,等待下一次使用。

2.下面我們進一步來分析這兩種連接方式的差異。

(1)使用JDBC直接連接數據庫,如圖所示:

這種方式當成千上萬個用戶方訪問數據庫時,就需要直接從數據庫獲取成千上萬個Connection對象,這對數據庫來說,無疑會造成巨大的壓力,會導致整個數據庫服務器奔潰。性能會受很大的影響。

(2)使用連接池連接數據庫,如喜下圖所示:

使用連接池技術,就會從根本上解決使用JDBC連接的問題。即使有成千上萬用戶訪問數據庫時,而不是直接和數據庫打交道,而是從連接池中得到事先放在池中的Connection連接對象,而連接池只和數據庫連接一次。這樣就保證了數據訪問性能。

3.最後,來詳細說明以下連接池技術在java中的應用。

目前比較流行的連接池有以下幾種:DBCP、c3p0(從2007年已停止更新,且性能也不好,不建議使用)、BoneCP、Druid(阿里巴巴開發的,國產連接池,性能很好)等等,還有很多就不一 一列舉了。

4.下面就以dbcp連接池爲例,詳細介紹下dbcp連接池在java中的真正使用。jdk以1.8爲例,數據庫以mysql1.7。

(1) 在正式使用之前,先建立開發環境以及導入相關架包。

commons-dbcp2.5.jar 2.5版本支持jdk1.8,以及commons-pool2.4.3.jar以及依賴包commons-loggin1.2.jar包,這個包主要用於日誌採集。最後在導入相關數據庫的驅動包,MYSQL驅動包mysql-connector-java-5.1.46-bin.jar即可。

(2)建立一個java工程,編寫DBUtils工具類,這個類主要實現DBCP連接池技術。

主要步驟爲:

(1.1)加載連接池的配置文件

(1.1)建立連接池

(1.2) 連接池從數據庫獲取connection對象放在池中

(1.3) 得到連接池中的connection對象

DBUtils.java類

最後在src同級目錄在,創建文件夾confing,將dbcp.properties文件放到該目錄下即可。

最後祝願大家在java的路上,都能天天進步,有所收穫,取得成績。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章