一.介紹:
? ? ? ? 數據庫連接池實際上就是一個? ?" 容器? "?
? ? ? ? 當有多個擁護需要訪問數據庫的時候, 一個用戶會打開一個數據庫連接, 但是!當用戶離開的時候,就會斷開數據庫連接,那么數據庫連接就作廢了,之后如果還有用戶需要進行訪問,需要再建立一個數據庫連接......循環往復, 那么數據庫的執行效率就會十分的慢....
? ? ? ? 以此作為前提的情況下,我們就可以使用連接池!也就是一個連接池當中有多個的數據庫連接, 當用戶使用完了之后數據庫連接并沒有被清楚,而是又回到了連接池當中,以便下一個用戶再使用數據庫連接! 通過這一點,可以極大的提高效率,而減少了建立連接的時間?
? ? ? ? *提高了資源的重用? ?提升系統響應速度*
? ? ? ? 當然,連接池也會有一定的 "自我判斷能力"? 指的是, 如果一個用戶? "睡著了"? 也就是長時間占用連接而不歸還, 連接池就會強制的拿回這個連接? 及時的歸還資源,強制的斷開連接
? ? ? ? ? ? ? ? ? ? ? ? *避免了連接遺漏*
? ? ? ? 由此可見,連接池的優點大概有三大部分
? ? ? ? 1.提高資源的重用
? ? ? ? 2.提升系統響應速度
? ? ? ? 3.避免了數據庫的連接遺漏
二.數據庫連接池的實現
? ? ? ? 1.官方接口
? ? ? ? DataSoure
? ? ? ? 功能:獲取連接? ?
? ? ? ? 2.常見的數據庫連接池:
? ? ? ? DBCP
? ? ? ? C3P0
? ? ? ? Druid(德魯伊)
? ? ? ? 在這里我們重點講解第三種Druid,其功能十分強大,并且該市JAVA語言最好的數據庫連接池之一!
三:"賽前"準備
? ? ? ? Druid的使用主要分為五個步驟:
? ? ? ? 1.導入jar包 durid? (拿1.1.12的版本作為一個例子)
? ? ? ? 1>首先下載相應的durid包
????????https://repo1.maven.org/maven2/com/alibaba/druid/1.1.12/druid-1.1.12.jar
? ? ? ? 這個是1.1.12版本的一個druid? jar包?
????????????????????????????????????????????????????????~~~~~下載的~~~~~比較慢
? ? ? ? 如果先前并沒有導入過mysql的,最好兩個都進行下載并導入,安裝包請收下,也可以看之前有關JDBC的有關內容補課~~~~
https://cdn.mysql.com/archives/mysql-installer/mysql-installer-community-8.0.35.0.msi? ? ? ?
MYSQL--JDBC*-CSDN博客
https://blog.csdn.net/2303_79546217/article/details/136367691?spm=1001.2014.3001.5502
2>導入
? ? ? ? ? ? ? ? 打開IDEA新建文件夾Lib,將剛搞下載好的包復制,粘貼進去即可,如下
????????
? ? ? ? ????????????????????????之后點擊Add.....,再設置模塊有效即可,如圖
?????????2.配置文件!*:
? ? ? ? ? ? ? ? 1.新的IDEA跟之前的IDEA配置文件圖像有所變化,但是大體位置依然是沒有變的,在相應的src當中創建druid.properties文件,如圖
????????????????????????????????????????之后向這個文件當中輸入以下的數據
driverClassName = com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/填寫需要進行操作的數據庫的名稱
#輸入你的MYSQL賬戶
username=root
#輸入你的MYSQL密碼
password=*****
#初始化連接個數
initialSize = 5
#最大的連接個數
maxActive = 10
#設置連接池的最大響應時間
maxWait = 3000
? ? ? ? 3.加載配置文件
? ? ? ? 4.后去連接池對象
? ? ? ? 5.獲取數據庫連接Connection
? ? ? ? 詳細如下:
package druid;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;
import java.io.FileInputStream;
import java.sql.Connection;
import java.util.Properties;public class druiddemo1 {public static void main(String[] args) throws Exception {//1.導入JRE包//2.定義配置文件//3.加載配置文件Properties prop =new Properties();// 在這里輸入相應的已經配置好的druid文件所在地點//但是有的時候前面需要加入模塊包名稱,有時候又不用,所以我們需要提前先進行一些判斷,從而方便之后尋找//System.out.println(System.getProperty("user.dir"));// 輸入之后會顯示出一個地址,按照地址查找.在地址后面拼接上我們需要進行輸入的地址,能夠找到配置文件的!// 就是我們所需要進行輸入的地址!prop.load(new FileInputStream("src/druid.properties"));//4.獲取連接池查詢對象DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);//5.獲取數據庫連接connectionConnection connection = dataSource.getConnection();System.out.println(connection);}
}
? ? ? ? ????????????????????????????????????????????????????????????????????????感謝觀看!OVER