java jdbc執行緒池的使用

2021-07-10 16:35:17 字數 1294 閱讀 7700

好久沒直接使用jdbc了,今天重溫了一下相關知識,並對連線池的使用寫了簡單的示例,記錄在此以便需要的同行參考和方便自己查閱,不足之處歡迎批評指正。

1、dbcp資料來源

所需jar包 dbcp:連線池的實現,commons-pool2:連線池實現的依賴

org.apache.tomcat

dbcp

6.0.29

org.apache.commons

commons-pool2

2.0

在這裡我使用了單例模式來建立dbcp資料來源,具體**輸入附上注釋

private static connection connection

;private static string url

="jdbc:mysql://localhost/test?useunicode=true&characterencoding=utf-8"

;private static string user

= "root"

;private static string password

="root"

;private static string driverclassname

="com.mysql.jdbc.driver"

;private static object obj

=new object();

//資料來源物件

private static basicdatasource bds

= null;

public static connection getconnectionbypool()}}

try catch (sqlexception e)

}

2、c3p0資料來源

c3p0相比之下效能更勝一籌,hibernate推薦使用c3p0連線池。可以自動清理不用的connection、statement和resultset。

示例中同樣採用單例模式來建立連線池,然後從連線池中獲取connection物件。

public static void 

initc3p0datasource() catch (propertyvetoexception e) }}

}public static connection getconnectionfromc3p0()

if (datasource

!= null) catch (sqlexception e)

}return null;

}

JAVA JDBC使用詳解

第一步 載入驅動 class.forname oracle.jdbc.driver.oracledriver 第二步 通過驅動管理器獲取對應連線物件 jdbc程式中的connection,它用於代表資料庫的鏈結,collection是資料庫程式設計中最重要的乙個物件,客戶端與資料庫所有互動都是通過c...

執行緒池的使用

簡而言之 兩個類 執行緒池的 類 public class threadpoolproxyfactory return mnormalthreadpoolproxy return public static threadpoolproxy createdownloadthreadpoolproxy ...

執行緒池的使用

執行緒池能幫助我們有效的管理執行緒,避免重複的建立銷毀執行緒。newfixedthreadpool 固定執行緒數量的執行緒池 newsinglethreadexecutor 返回乙個只有乙個執行緒的執行緒池 newcachedthreadpool 返回乙個可根據實際情況調整執行緒數量的執行緒池 ne...