C3P0連接池

C3P0連接池

使用連接池時,爲了簡化操作,我們可以使用插件來簡化操作步驟,C3P0就是個簡化的操作工具,使用它是,我們需要兩個東西,第一就是名爲c3p0-config.xml的文件,這裏面所寫的是一些配置的文件,第二個就是它的jar包

當準備好這兩個後,考慮到在使用時要不斷地調用它的方法,所以我們創建一個C3P0的工具類

package JDBCUtils;

import java.sql.Connection;
import java.sql.SQLException;

import javax.sql.DataSource;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class C3P0Utils {
	private static ComboPooledDataSource pool=new ComboPooledDataSource();
	
	public static DataSource getDataSource() {
		return pool;
	}
	
	public static Connection getConnection() {
		try {
			return pool.getConnection();
		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
}

主要會調用這個工具類中的getConnection方法來獲取與數據庫的連接,接下來,我們創建一個測試類來測試對這個連接池的操作

package JDBCUtils;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import org.junit.Test;

public class TestC3P0 {

	@Test
	public void test() {
		Connection conn=null;
		PreparedStatement pstmt=null;
		try {
			conn=C3P0Utils.getConnection();
			String sql="insert into t_user values(null,'www','3232')";
			pstmt=conn.prepareStatement(sql);
			int x=pstmt.executeUpdate();
			if(x>0) {
				System.out.println("添加成功");
			}else {
				System.out.println("添加失敗");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			JDBCUtils.release(conn, pstmt,null);
		}
	}
}

通過測試,成功的將數據添加到數據庫中。此處就省去了自己去創建連接池的步驟。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章