JDBC利用C3P0数据库连接池连接数据库

  

JDBC之C3P0数据库连接池,供大家参考,具体内容如下

  

1首先在src中创建c3p0-config。xml配置文件,文件中内容如下(首先下载C3P0。jar工具包并放入项目环境变量中)

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !DOCTYPE xml>   & lt; c3p0-config>   & lt; !——下面四个是数据库连接必须需要的东西——比;   & lt; named-config name=癕ySQL”比;& lt; !——为你的数据库起一个名字,我的叫MySQL——比;   & lt;属性名=" driverClass "祝辞com.mysql.jdbc.Driver   & lt;属性名=" jdbcUrl "祝辞jdbc: mysql: localhost: 3306/jdbc_01   & lt;属性名="用户"祝辞root& lt; !——数据库账号——比;   & lt;属性名="密码"祝辞root& lt; !——数据库密码——比;      & lt; !——若数据库链接数量不足的时候,向数据库申请的连接数量——比;   & lt;属性名=" acquireIncrement "祝辞5 & lt;/property>   & lt; !——初始化数据库连接池连接的数量——比;   & lt;属性名=" initialPoolSize "祝辞10 & lt;/property>   & lt; !——数据库连接池中最小连接数——比;   & lt;属性名=" minPoolSize "祝辞5 & lt;/property>   & lt; !——数据库连接池中最大连接数——比;   & lt;属性名=" maxPoolSize "在100 & lt;/property>   & lt; !——C3P0数据库连接池可以维护的声明的数量——比;   & lt;属性名=" maxStatements "祝辞2 & lt;/property>   & lt; !——每个连接可同时使用声明的数量——比;   & lt;属性名=" maxStatementsPerConnection "祝辞5 & lt;/property>   & lt;/named-config>   & lt;/c3p0-config>      

2创建一个工具类用于利用C3P0数据库连接池获得数据库连接工具类如下

        包cn.qhy.jdbc;      进口java.io.IOException;   进口java.lang.reflect.Field;   进口java.sql.Connection;   进口java.sql.PreparedStatement;   进口java.sql.ResultSet;   进口java.sql.ResultSetMetaData;   进口java.sql.SQLException;   进口java.sql.Statement;   进口java.util.HashMap;   进口java.util.Map;   进口java.util.Map.Entry;      进口javax.sql.DataSource;      进口com.mchange.v2.c3p0.ComboPooledDataSource;      公开课MyDBUtils {   私有静态数据源的数据源;   静态{//静态代码块,只执行一次   数据源=new ComboPooledDataSource (MySQL);   }/* *   *   * @return   * @throws SQLException异常   */公共静态连接getConnection()抛出SQLException {   返回dataSource.getConnection ();   }/* *   *通用的用来关闭数据有关的所有的资源的操作   */公共静态空间关闭(连接康涅狄格州、语句sta ResultSet re) {   如果(re !=null)   尝试{   re.close ();   }捕捉(SQLException e) {   e.printStackTrace ();   }   如果(sta !=null)   尝试{   sta.close ();   }捕捉(SQLException e) {   e.printStackTrace ();   }   如果(康涅狄格州!=null)   尝试{   conn.close ();   }捕捉(SQLException e) {   e.printStackTrace ();   }   }   }      

3创建测试类,测试C3P0是否连接数据库(利用JUnit单元测试)

        包cn.qhy.test;      进口java.beans.PropertyVetoException;   进口java.sql.Connection;   进口java.sql.SQLException;      进口org.junit.jupiter.api.Test;      进口com.mchange.v2.c3p0.ComboPooledDataSource;      进口cn.qhy.jdbc.MyDBUtils;      公开课C3P0Test {/* *   * @throws SQLException异常   *   */@Test   公共空间c3p0xmlTest()抛出SQLException {   连接康涅狄格州=MyDBUtils.getConnection ();   System.out.println(康涅狄格州);   conn.close ();   }   }      

结果如下
  

  

 JDBC利用C3P0数据库连接池连接数据库

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

JDBC利用C3P0数据库连接池连接数据库