您的位置:首页 > 数据库

JDBC_数据库连接池(二) DNCP与C3P0的使用方法及代码演示

2016-01-03 19:18 567 查看

1.DNCP使用方法

首先需要相应的两个jar包

分别为:

commons-dbcp-1.2.jar

commons-pool-1.6.jar

将相应的jar包导入

相应代码如下:

JDBC_Test1.java

[code]package com.atchance.jdbc;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSource;

import oracle.jdbc.*;

import oracle.jdbc.driver.*;
public class JDBCTest1 {

    /**
     * 使用JDBC数据库连接池
     * 1.加入jar包,依赖于Commons Pool 
     * 2.创建数据库连接池
     * 3.为数据源实例指定必须的属性
     * 4.从数据源中获取数据库连接
     * @throws SQLException 
     * @throws Exception
     */
    public void testDBCP() throws SQLException{

        BasicDataSource dataSource = null;
        //1. 创建DBPC 数据源实例
        dataSource = new BasicDataSource();
        //2. 为数据源实例指定必须的属性
        dataSource.setUsername("scott");
        dataSource.setPassword("tiger");
        dataSource.setUrl("jdbc:oracle:thin:@localhost:1521:ORCL");
        dataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver");

        //3.指定数据源的一些可选的属性
        //1).指定数据库连接池中初始化连接数的个数
        dataSource.setInitialSize(10);

        //2).指定最大连接数:同一时刻可以同时向数据库申请的连接数
        dataSource.setMaxActive(50);

        //3).指定最小连接数:在数据库连接池中保存的最少的空闲连接的数量
        dataSource.setMinIdle(5);

        //4).等待数据库连接池分配的最长时间,单位为毫秒,超出该时间将抛出异常
        dataSource.setMaxWait(1000 * 5);

        //4.从数据源中获取数据库连接
        Connection connection = dataSource.getConnection();
        System.out.println(connection.getClass());
    }

    public static void main(String[] arg) throws Exception{

        JDBCTest1 jd = new JDBCTest1();
        jd.testDBCP();
    }
}


2.C3P0使用方法

同样需要导入一个jar包:

c3p0-0.9.2.1.jar

示例代码如下:

[code]public void testC3P0() throws Exception{

        ComboPooledDataSource cpds = new ComboPooledDataSource();
        cpds.setDriverClass("oracle.jdbc.driver.OracleDriver");
        cpds.setJdbcUrl("jdbc:oracle:thin:@localhost:1521:ORCL");
        cpds.setUser("scott");
        cpds.setPassword("tiger");

        System.out.println(cpds);

    }


“`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: