Java數(shù)據(jù)庫(kù)連接池c3p0過(guò)程解析
首先下載c3p0的jar包
https://mvnrepository.com/search?q=c3p0
導(dǎo)入jar包到eclipse
將c3p0的jar包放到eclipse中,單擊右鍵,選擇build path ,在選擇 add jars
創(chuàng)建連接池對(duì)象
ComboPooledDataSource cpd= new ComboPooledDataSource();
設(shè)置連接參數(shù)
方法一
使用靜態(tài)代碼塊來(lái)初始化參數(shù)(不推薦)如果數(shù)據(jù)庫(kù)發(fā)生改變,源文件需要重新編寫編譯,項(xiàng)目需要重新部署
static ComboPooledDataSource cpd= new ComboPooledDataSource(); static { try { cpd.setDriverClass("com.mysql.jdbc.Driver"); cpd.setJdbcUrl("jdbc:mysql:///users?characterEnconding=utf-8"); cpd.setUser("root"); cpd.setPassword("123456"); } catch (PropertyVetoException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
方法二
在src的目錄下建立c3p0.propertise文件
c3p0.driverClass=com.mysql.jdbc.Driver
c3p0.jdbcUrl=jdbc:mysql:///users?characterEnconding=utf-8
c3p0.user=root
c3p0.password=123456
方法三
在src目錄下建立 c3po-config.xml文件
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <default-config> <property name="driverClass">com.mysql.jdbc.Driver </property> <property name="jdbcUrl">jdbc:mysql:///jt_db?characterEncoding=utf-8 </property> <property name="user">root </property> <property name="password">root </property> </default-config> </c3p0-config>
調(diào)用連接池對(duì)象
//創(chuàng)建連接池對(duì)象 ComboPooledDataSource cpd= new ComboPooledDataSource(); public void find() throws Exception { //獲取連接池連接 Connection conn = cpd.getConnection(); //創(chuàng)建傳輸器 PreparedStatement ps = conn.prepareStatement("select * from user"); //結(jié)果集 ResultSet rs = ps.executeQuery(); while(rs.next()) { rs.getInt(1);//獲取的行的第一列 rs.getString("id");//獲取行的id列 } }
連接池對(duì)象的close方發(fā)被改造了,不是釋放連接而是將連接還給連接池
rs.close();
ps.close();
conn.close();
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
如何使用Spring Batch進(jìn)行批處理任務(wù)管理
本文介紹了如何配置Spring Batch、如何創(chuàng)建批處理任務(wù),以及如何讀取和寫入數(shù)據(jù),希望通過(guò)本文的介紹,你能更好地理解和使用Spring Batch來(lái)管理批處理任務(wù),感興趣的朋友跟隨小編一起看看吧2024-08-08深入淺出重構(gòu)Mybatis與Spring集成的SqlSessionFactoryBean(上)
通常來(lái)講,重構(gòu)是指不改變功能的情況下優(yōu)化代碼,但本文所說(shuō)的重構(gòu)也包括了添加功能。這篇文章主要介紹了重構(gòu)Mybatis與Spring集成的SqlSessionFactoryBean(上)的相關(guān)資料,需要的朋友可以參考下2016-11-11Java?InheritableThreadLocal使用示例詳解
InheritableThreadLocal繼承了ThreadLocal,此類擴(kuò)展了ThreadLocal以提供從父線程到子線程的值的繼承:當(dāng)創(chuàng)建子線程時(shí),子線程接收父線程具有的所有可繼承線程局部變量的初始值。?通常子線程的值與父線程的值是一致的2022-09-09HttpServletResponse亂碼問題_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了HttpServletResponse亂碼問題,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07SpringBoot整合Flyway實(shí)現(xiàn)數(shù)據(jù)庫(kù)的初始化和版本管理操作
Flyway?是一款開源的數(shù)據(jù)庫(kù)版本管理工具,它可以很方便的在命令行中使用,或者在Java應(yīng)用程序中引入,用于管理我們的數(shù)據(jù)庫(kù)版本,這篇文章主要介紹了SpringBoot整合Flyway實(shí)現(xiàn)數(shù)據(jù)庫(kù)的初始化和版本管理,需要的朋友可以參考下2023-06-06利用spring boot如何快速啟動(dòng)一個(gè)web項(xiàng)目詳解
這篇文章主要給大家介紹了關(guān)于利用spring boot如何快速啟動(dòng)一個(gè)web項(xiàng)目的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧、2017-12-12MybatisPlus為何可以不用@MapperScan詳解
這篇文章主要給大家介紹了關(guān)于MybatisPlus為何可以不用@MapperScan的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MybatisPlus具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-04-04