通过数据库连接池连接数据库方式

c3p0-config配置信息:


</pre><span style="font-size:18px;color:#ff0000;">c3p0-config.xml配置文件配置信息:</span><p></p><p><span style="font-size:18px; color:#ff0000"></span></p><pre name="code" class="html"><c3p0-config>
<named-config name="mvcapp">
<property name="user">root</property>
<property name="password">root</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql:///webstudy</property>
<!-- 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数 -->
<property name="acquireIncrement">5</property>    
<!-- 连接池初始获取的连接 -->
<property name="initialPoolSize">10</property>   
<property name="minPoolSize">10</property>
<!-- 连接池保留的最大连接数 -->
<property name="maxPoolSize">50</property>  
<!-- --JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements -->  
<!--属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。   如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0  -->
<property name="maxStatements">20</property>
<!-- 定义了连接池内单个连接所拥有的最大缓存statements数 -->
<property name="maxStatementsPerConnection">5</property>  
</named-config>
</c3p0-config>

/**
 * 
 *JdbcUtils操作数据库的工具类
*ComboPooledDataSource:作用:数据库连接池,封装了数据库连接
 */

/**
 * 
 *JdbcUtils操作数据库的工具类
*ComboPooledDataSource:作用:数据库连接池,封装了数据库连接
 */
public class JdbcUtils {
private static DataSource datasource = null;
static{
datasource = new ComboPooledDataSource("mvcapp");   
//静态代码块,只有类在加载的时候被执行一次
}

/**
* 释放Connection连接
* @param connection
*/
public static void release(Connection connection){

}
/**
* 返回连接数据库连接对象
* @return
* @throws SQLException 
*/
public static Connection getConnection() throws SQLException{
return datasource.getConnection();
}
}


//数据库连接测试

public class JunitTestConnection{
@Test
public void test() throws SQLException, ClassNotFoundException{
Connection connection = JdbcUtils.getConnection();
System.out.println(connection);
}
}

猜你喜欢

转载自blog.csdn.net/u013148287/article/details/52004642