1.配置c3p0-config.xml的前置环境
c3p0-0.9.5.2.jar
c3p0-0.9.5.2-sources.jar
hamcrest-core-1.3.jar
javax.servlet-api-3.1.0.jar
junit-4.12.jar
mchange-commons-java-0.2.11.jar
mysql-connector-java-5.1.7-bin.jar
2.编写c3p0-config.xml文件
<?xml version="1.0" encoding="utf-8" ?>
<c3p0-config>
<default-config>
<!--数据库的连接账号(账号基本上都是root)-->
<property name="user">root</property>
<!--数据库的连接密码-->
<property name="password">root</property>
<!--获取数据库连接(newsmanagersystem)是数据库的名称-->
<property name="jdbcUrl">jdbc:mysql://localhost:3306/newsmanagersystem</property>
<!--连接MySQL数据库的配置文件 注:等号前后不要有空格-->
<!--驱动名-->
<property name="driverClass">com.mysql.jdbc.Driver</property>
<!--连接池初始化的时候连接数-->
<property name="initialPoolSize">10</property>
<!--连接池中连接的最大个数-->
<property name="maxPoolSize">100</property>
<!--用户获得Connection的时候,如果有连接就获得,没有就等待时间,如果超时就报异常-->
<property name="maxIdleTime">30</property>
<!--连接池中连接的最小个数-->
<property name="minPoolSize">10</property>
</default-config>
</c3p0-config>
3. 编写工具类
package com.xxx.utils;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class C3p0Utils {
//得到dataSource
private static DataSource dataSource=new ComboPooledDataSource();
//获取数据库连接
public static Connection getConnection(){
try {
return dataSource.getConnection();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
//返回dataSource
public static DataSource getDataSource(){
return dataSource;
}
}
4.测试工具类
package com.xxx.test;
import com.bojian.utils.C3p0Utils;
import org.junit.Test;
import java.sql.SQLException;
public class C3p0Test {
/**
* 单元测试方法
* 1.方法的返回值,建议使用void,一般没有返回值
* 2.参数列表,建议空参,一般是没有参数
* 3.方法上需要书写上@Test注解
* 4.每个方法都能独立运行
*
* 判断结果 你好 魏昭星
* 判断结果 你好 魏昭星
* 绿色:成功
* 红色:失败
*/
@Test
public void TestC3p0Utils(){
System.out.println(C3p0Utils.getConnection());
try {
C3p0Utils.getConnection().close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
5.c3p0-config.xml连接数据库的常见错误
1.c3p0-config.xml的首字母大写
2.c3p0-config.xml的配置不规范
3.需要的环境没配置好
最后,创作不易,请大家多多支持。