Java資料庫連線池c3p0過程解析
阿新 • • 發佈:2020-07-28
首先下載c3p0的jar包
https://mvnrepository.com/search?q=c3p0
匯入jar包到eclipse
將c3p0的jar包放到eclipse中,單擊右鍵,選擇build path,在選擇 add jars
建立連線池物件
ComboPooledDataSource cpd= new ComboPooledDataSource();
設定連線引數
方法一
使用靜態程式碼塊來初始化引數(不推薦)如果資料庫發生改變,原始檔需要重新編寫編譯,專案需要重新部署
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>
呼叫連線池物件
//建立連線池物件 ComboPooledDataSource cpd= new ComboPooledDataSource(); public void find() throws Exception { //獲取連線池連線 Connection conn = cpd.getConnection(); //建立傳輸器 PreparedStatement ps = conn.prepareStatement("select * from user"); //結果集 ResultSet rs = ps.executeQuery(); while(rs.next()) { rs.getInt(1);//獲取的行的第一列 rs.getString("id");//獲取行的id列 } }
連線池物件的close方發被改造了,不是釋放連線而是將連線還給連線池
rs.close();
ps.close();
conn.close();
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。