1. 程式人生 > 其它 >jdbc DBCP連線池

jdbc DBCP連線池

四大連線引數

連線池也是使用四大連線引數來完成建立連線物件!

實現的介面

連線池必須實現:jaxax.sal.DataSource介面!

池物件

連線池返回的connection物件,它的close()方法與眾不同! 呼叫它的close()不是關閉,而是把連線歸還給池!

連線池底部依賴mysql

連線池內部使用四大引數建立了連線物件!

即mysql驅動提供的connection連線池使用mysql的連線物件進行了裝飾,只對close ()方法進行了增強!

裝飾之後的connection的close ()方法,用來把當前連線歸還給池!

package demo;

import java.sql.Connection;
import java.sql.SQLException; import org.apache.commons.dbcp.BasicDataSource; import org.junit.Test; /** * 連線池演示 * @author CDU_LM * */ public class Test1 { @Test public void fun1() throws SQLException { /** * 建立連線池物件 * 配置四大引數 * 配置池引數 * 得到連線物件
*/ BasicDataSource bds = new BasicDataSource(); bds.setDriverClassName("con.mysql.jdbc.Driver"); bds.setUrl("jdbc:mysql://localhost:3306/db1"); bds.setUsername("root"); bds.setPassword("123456"); bds.setMaxActive(20); // 最大活動連線 bds.setMinIdle(3); //
最小空閒連線 bds.setMaxWait(1000); // 最大等待時間,毫秒級 Connection conn = bds.getConnection(); // 獲取連線物件 conn.close(); // 歸還物件 } }