您的位置:首页 > 数据库

c3p0数据源连接数据库

2015-10-05 18:19 316 查看
c3p0数据库连接池

相关jar包

c3p0-0.9.1.2.jar

mysql数据库的驱动包!

配置文件

    c3p0-config.xml

文件内容

<?xml version="1.0" encoding="UTF-8"?>

<c3p0-config>

  <named-config name="javawebapp">

 

      <property name="user">root</property>

    <property name="password">root</property>

    <property name="jdbcUrl">jdbc:mysql://localhost:3306/bookstore</property>

    <property name="driverClass">com.mysql.jdbc.Driver</property>

 

    <property name="acquireIncrement">2</property>

    <property name="initialPoolSize">5</property>

    <property name="minPoolSize">5</property>

    <property name="maxPoolSize">10</property>

    <property name="maxStatements">20</property>

    <property name="maxStatementsPerConnection">5</property>

  </named-config>

</c3p0-config>

java代码

package com.utils;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.sql.DataSource;

import com.exception.DBException;

import com.mchange.v2.c3p0.ComboPooledDataSource;

/**

 *

 * JDBC 的工具类

 *

 */

public class JDBCUtils {

    private static DataSource dataSource = null;

    private static Connection conn = null;

    static{

        dataSource = new ComboPooledDataSource("javawebapp");

    }

    

    //获取数据库连接

    public static Connection getConnection(){  

        try {

            conn = dataSource.getConnection();

            if(conn!=null){

                System.out.println("数据库连接成功");

            }

            return conn;

        } catch (SQLException e) {

            e.printStackTrace();

            throw new DBException("数据库连接错误!");

        }

    }

 

    //关闭数据库连接

    public static void release(Connection connection) {

        try {

            if(connection != null){

                connection.close();

            }

        } catch (SQLException e) {

            e.printStackTrace();

            throw new DBException("数据库连接错误!");

        }

    }

    

    //关闭数据库连接

    public static void release(ResultSet rs, Statement statement) {

        try {

            if(rs != null){

                rs.close();

            }

        } catch (SQLException e) {

            e.printStackTrace();

            throw new DBException("数据库连接错误!");

        }

        

        try {

            if(statement != null){

                statement.close();

            }

        } catch (SQLException e) {

            e.printStackTrace();

            throw new DBException("数据库连接错误!");

        }

    }

    

    

    

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