更新時(shí)間:2021-02-18 02:03:46 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3911次
說(shuō)到數(shù)據(jù)庫(kù),java程序員和準(zhǔn)備學(xué)習(xí)java等計(jì)算機(jī)語(yǔ)言的人肯定都不陌生,尤其是在現(xiàn)在數(shù)據(jù)信息化的時(shí)代,數(shù)據(jù)庫(kù)更是起到了舉足輕重的作用。今天來(lái)學(xué)習(xí)關(guān)于數(shù)據(jù)庫(kù)連接池的知識(shí),想學(xué)習(xí)java數(shù)據(jù)庫(kù)和連接池小伙伴們一定不要錯(cuò)過(guò)下面的內(nèi)容。
數(shù)據(jù)庫(kù)的基本概念在前面的文章中都學(xué)習(xí)過(guò),對(duì)于java零基礎(chǔ)的朋友們來(lái)說(shuō),對(duì)連接池還是有些陌生的,現(xiàn)在來(lái)簡(jiǎn)單對(duì)連接池的概念來(lái)介紹一下。連接池用于創(chuàng)建和管理數(shù)據(jù)庫(kù)連接的緩沖池技術(shù),緩沖池中的連接可以被任何需要他們的線程使用。當(dāng)一個(gè)線程需要用JDBC對(duì)一個(gè)數(shù)據(jù)庫(kù)操作時(shí),將從池中請(qǐng)求一個(gè)連接。當(dāng)這個(gè)連接使用完畢后,將返回到連接池中,等待為其他的線程服務(wù)。這就是連接池的概念。
下面來(lái)介紹一下市面上常見(jiàn)的數(shù)據(jù)庫(kù)連接池都有哪些?
(1)DBCP:DBCP是一個(gè)依賴Jakarta commons-pool對(duì)象池機(jī)制的數(shù)據(jù)庫(kù)連接池,DBCP可以直接的在應(yīng)用程序中使用,Tomcat的數(shù)據(jù)源使用的就是DBCP。
(2)c3p0:c3p0是一個(gè)開(kāi)放源代碼的JDBC連接池,它在lib目錄中與Hibernate一起發(fā)布,包括了實(shí)現(xiàn)jdbc3和jdbc2擴(kuò)展規(guī)范說(shuō)明的Connection 和Statement池的DataSources 對(duì)象。
(3)druid:阿里出品,淘寶和支付寶專用數(shù)據(jù)庫(kù)連接池,但它不僅僅是一個(gè)數(shù)據(jù)庫(kù)連接池,它還包含一個(gè)ProxyDriver,一系列內(nèi)置的JDBC組件庫(kù),一個(gè)SQL Parser。支持所有JDBC兼容的數(shù)據(jù)庫(kù),包括Oracle、MySql、SQL Server、H2等。
那么數(shù)據(jù)庫(kù)連接池有什么作用呢?在數(shù)據(jù)庫(kù)連接池中預(yù)先創(chuàng)建N根連接
當(dāng)我們?cè)谑褂眠B接的時(shí)候,直接從連接池中取得。用完之后,將連接放回到連接池中。使用數(shù)據(jù)庫(kù)連接池來(lái)幫助我們對(duì)連接進(jìn)行有效的管理,不用我們自己去管理了。在實(shí)際項(xiàng)目開(kāi)發(fā)中,數(shù)據(jù)庫(kù)連接池會(huì)大量的應(yīng)用。
最后來(lái)學(xué)習(xí)一下數(shù)據(jù)庫(kù)連接池的搭建步驟:
(1)導(dǎo)入所需數(shù)據(jù)庫(kù)連接池提供的jar包;
(2)在src根下,導(dǎo)入properties屬性文件;
(3)創(chuàng)建數(shù)據(jù)庫(kù)連接池工廠(通過(guò)加載properties文件);
(4)通過(guò)連接池工廠來(lái)創(chuàng)建連接池;
(5)在使用連接的時(shí)候,我們從連接池中直接取得;
(6)在使用完連接的時(shí)候,將連接存放回連接池中。
上面就是關(guān)于數(shù)據(jù)庫(kù)連接池相關(guān)知識(shí)的基本介紹,包括了線程池和常見(jiàn)3種數(shù)據(jù)庫(kù)線程池的概念、作用以及數(shù)據(jù)庫(kù)連接池的搭建步驟,這些都屬于比較基礎(chǔ)的知識(shí),希望這篇文章對(duì)大家能夠有所幫助,并以今天整理的內(nèi)容作為基礎(chǔ),在后面的MySQL教程中學(xué)習(xí)更深入的數(shù)據(jù)庫(kù)連接池的相關(guān)內(nèi)容和操作。
相關(guān)閱讀
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)