c3p0连接池

---------------//硬编码方式 -------------------
    @Test
    public void test(){
        try {

       ComboPooledDataSource dataSource=new ComboPooledDataSource();
              dataSource.setInitialPoolSize(3);    //初始化连接数
              dataSource.setMaxPoolSize(6);        //最大连接数
              dataSource.setMaxIdleTime(3000);    //最大空闲时间
              dataSource.setDriverClass("com.mysql.jdbd.Driver");//驱动
              dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/day15");//数据库连接地址
              dataSource.setUser("root");//用户名
              dataSource.setPassword("root");//用户密码
        } catch (PropertyVetoException e) {
              e.printStackTrace();
        }    
    }

---------------配置文件方式-------------推荐这种

//xml配置文件方式
    @Test
    public void test1(){
        ComboPooledDataSource dataSource=new ComboPooledDataSource();
        //会自动加载src路径下的配置文件  文件名必须   c3p0-config.xml

---------------当c3p0-config.xml有多个数据源  可使用有参构造函数new ComboPooledDataSource("数据源名称");
        
    }

---------------xml文件----------------

<?xml version="1.0" encoding="utf-8"?>
<c3p0-config>
      <named-config name="mysql">  
        <property name="user">root</property>
        <property name="password">java</property>
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="jdbcUrl">jdbc:mysql://localhost:3306/day15</property>
        <property name="initialPoolSize">10</property>
        <property name="maxIdleTime">30</property>
        <property name="maxPoolSize">100</property>
        <property name="minPoolSize">10</property>
      </named-config>
      <named-config name="oracle">  
        <property name="user">root</property>  
        <property name="password">root</property>  
        <property name="driverClass">oracle.jdbc.driver.OracleDriver</property>  
        <property name="jdbcUrl">jdbc:oracle:thin:@127.0.0.1:1521:orcl</property>
        <!-- 连接池初始化时建立的连接数 默认值是3 -->  
        <property name="initialPoolSize">3</property>  
        <!-- 连接的最大空闲时间  单位秒 默认是0-代表永远不会断开连接  超过设定时间的空闲连接将会断开 -->  
        <property name="maxIdleTime">30</property>  
        <!-- 连接池中拥有的最大连接数 默认值为15个 -->  
        <property name="maxPoolSize">20</property>  
        <!-- 连接池中保持的最小连接数  默认值为3个-->  
        <property name="minPoolSize">3</property>  
        <!-- 将连接池的连接数保持在minpoolsize 必须小于maxIdleTime设置  默认值为0代表不处理  单位秒 -->  
        <property name="maxIdleTimeExcessConnections">15</property>  
    </named-config>     
</c3p0-config>

原文地址:https://www.cnblogs.com/ly-china/p/5420289.html