Java操作數(shù)據(jù)庫連接池案例講解
數(shù)據(jù)庫連接池
概念:其實就是一個容器(集合),存放數(shù)據(jù)庫連接的容器。
-
概念:其實就是一個容器(集合),存放數(shù)據(jù)庫連接的容器。
當系統(tǒng)初始化好后,容器被創(chuàng)建,容器中會申請一些連接對象,當用戶來訪問數(shù)據(jù)庫時,從容器中獲取連接對象,用戶訪問完之后,會將連接對象歸還給容器。 -
好處:
- 節(jié)約資源
- 用戶訪問高效
-
實現(xiàn):
-
標準接口:DataSource javax.sql包下的
- 方法:
- 獲取連接:getConnection()
- 歸還連接:Connection.close()。如果連接對象Connection是從連接池中獲取的,那么調用Connection.close()方法,則不會再關閉連接了。而是歸還連接
- 方法:
-
一般我們不去實現(xiàn)它,有數(shù)據(jù)庫廠商來實現(xiàn)
- C3P0:數(shù)據(jù)庫連接池技術
- Druid:數(shù)據(jù)庫連接池實現(xiàn)技術,由阿里巴巴提供的
-
Druid:數(shù)據(jù)庫連接池實現(xiàn)技術,由阿里巴巴提供的
1. 步驟:
1. 導入jar包 druid-1.0.9.jar
2. 定義配置文件:
* 是properties形式的
* 可以叫任意名稱,可以放在任意目錄下
3. 加載配置文件。Properties
4. 獲取數(shù)據(jù)庫連接池對象:通過工廠來來獲取 DruidDataSourceFactory
5. 獲取連接:getConnection
import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; import java.util.Properties; import javax.sql.DataSource; import com.alibaba.druid.pool.DruidDataSourceFactory; public class MyJdbc13{ public static void main(String[] args)throws Exception { //Hashtable的子類 Properties properties = new Properties(); InputStream inStream = new FileInputStream("src/druid.properties"); properties.load(inStream); //數(shù)據(jù)庫連接池 DataSource dataSource = DruidDataSourceFactory.createDataSource(properties); Connection conn = dataSource.getConnection(); //將該conn對象交還給連接池 conn.close(); } }
到此這篇關于Java操作數(shù)據(jù)庫連接池案例講解的文章就介紹到這了,更多相關Java操作數(shù)據(jù)庫連接池內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SpringBoot項目中如何實現(xiàn)MySQL讀寫分離詳解
在高并發(fā)下需要對應用進行讀寫分離,配置多數(shù)據(jù)源,即寫操作走主庫,讀操作則走從庫,主從數(shù)據(jù)庫負責各自的讀和寫,緩解了鎖的爭用,提高了讀取性能,這篇文章主要給大家介紹了關于SpringBoot項目中如何實現(xiàn)MySQL讀寫分離的相關資料,需要的朋友可以參考下2022-07-07Springboot整合mybatisplus時,使用條件構造器排序報錯問題及解決
這篇文章主要介紹了Springboot整合mybatisplus時,使用條件構造器排序報錯問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-04-04Springboot中@RequestParam和@PathVariable的用法與區(qū)別詳解
這篇文章主要介紹了Springboot中@RequestParam和@PathVariable的用法與區(qū)別詳解,RESTful API設計的最佳實踐是使用路徑參數(shù)來標識一個或多個特定資源,而使用查詢參數(shù)來對這些資源進行排序/過濾,需要的朋友可以參考下2024-01-01如何解決websocket開啟多個頁面訪問同一個連接會失效的問題
使用WebSocket時,若多個頁面訪問同一個WebSocket連接可能會導致連接失效,遇到這個問題時,可以通過在SpringBoot中使用@ServerEndpoint注解并添加@Component來解決,出現(xiàn)連接錯誤通常是因為WebSocket連接接收到的是一個GET請求2024-09-09logback TimeBasedRollingPolicy按天生成日志源碼解析
這篇文章主要為大家介紹了logback TimeBasedRollingPolicy按天生成日志源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11Springboot中使用Redis實現(xiàn)分布式鎖的示例代碼
在分布式系統(tǒng)中,為了保證數(shù)據(jù)的一致性和任務的互斥執(zhí)行,分布式鎖是一種常見的解決方案,本文主要介紹了Springboot中使用Redis實現(xiàn)分布式鎖的示例代碼,具有一定的參考價值,感興趣的可以了解一下2024-05-05Java中FileOutputStream流的write方法
這篇文章主要為大家詳細介紹了Java中FileOutputStream流的write方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08