最好的連線池是druid,可充當連線池、資料庫訪問監視器、獲取sql執行日誌
手動建立資料來源步驟:
基於c3p0:
combopooleddatasource datasource=
newcombopooleddatasource()
; datasource.
setdriverclass
("com.mysql.jdbc.driver");
datasource.
setjdbcurl
("jdbc:mysql://localhost:3306/test");
datasource.
setuser
("root");
datasource.
setpassword
("root");
connection connection = datasource.
getconnection()
; system.out.
println
(connection)
; connection.
close()
;
基於druid:
druiddatasource datasource =
newdruiddatasource()
; datasource.
setdriverclassname
("com.mysql.jdbc.driver");
datasource.
seturl
("jdbc:mysql://localhost:3306/test");
datasource.
setusername
("root");
datasource.
setpassword
("root");
druidpooledconnection connection = datasource.
getconnection()
; system.out.
println
(connection)
; connection.
close()
;
如載入jdbc(*).properties
jdbc.driver=com.mysql.jdbc.driver
jdbc.url=jdbc:mysql://localhost:3306/test
jdbc.username=root
jdbc.password=root
//讀取配置檔案
resourcebundle rb = resourcebundle.
getbundle
("jdbc");
string driver = rb.
getstring
("jdbc.driver");
string url = rb.
getstring
("jdbc.url");
string username = rb.
getstring
("jdbc.username");
string password = rb.
getstring
("jdbc.password");
//建立資料來源物件 設定鏈結引數
combopooleddatasource datasource =
newcombopooleddatasource()
; datasource.
setdriverclass
(driver)
; datasource.
setjdbcurl
(url)
; datasource.
setuser
(username)
; datasource.
setpassword
(password)
; connection connection = datasource.
getconnection()
; system.out.
println
(connection)
; connection.
close()
;
資料來源 連線池
資料來源 datasource?連線池connection pool 資料來源與連線池沒有必然聯絡 發現ds與cp的概念有些不清楚 資料來源一般與jndi在一起使用,jndi遮蔽了db的細節資訊,使用jndi獲取資料連線可以不用關心db的具體資訊 使用jndi需要配置資料來源 reference 使...
資料來源與連線池
資料來源 datasource 即資料 呼叫datasource.getconnection 即可獲取乙個連線,而無需關心連到哪個資料庫,使用者名稱 密碼是什麼.這比drivermanager.getconnection url,user,password 要先進多了.我們就通過這個datasour...
資料來源和連線池
datasource通常被稱為資料來源,它包含連線池和連線池管理兩部分,習慣是也把datasource稱為連線池 連線池通俗的理解 資料庫連線池就是準備乙個池子,裡面放著很多生成好的connection,使用者請求獲得連線,就不需要getconnection,值需要從池子裡拿乙個給它就行了,這樣省掉...