一、下载驱动
- 下载链接:https://pan.baidu.com/s/1P0Kf...
提取码:c3p0 清单:
- c3p0-0.9.5.2.jar
- mchange-commons-java-0.2.11.jar
- mchange-commons-java-0.2.15.jar
- mysql-connector-java-8.0.11.jar
二、导入驱动
- 点击
File
-Project Structure
- 如图,导入jar包:
三、编写代码
实现方式一:set方法
编写测试方法:
@Test
public void testGetConnection1() throws Exception {
//获取C3P0数据库连接池
ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass("com.mysql.jdbc.Driver");
cpds.setJdbcUrl("jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC");
cpds.setUser("mysql数据库账号");
cpds.setPassword("mysql数据库密码");
//设置初始数据库连接池数
cpds.setInitialPoolSize(10);
Connection conn = cpds.getConnection();
System.out.println(conn);
conn.close();
}
请自行修改数据库名
、mysql数据库账号
、mysql数据库密码
处的内容。
运行该测试方法,若得到以下输出,则成功:
如果不成功,很可能是因为setJdbcUrl
中没有加入时区的参数(见参考1):serverTimezone=UTC
对于mysql 8.0以上的mysql数据库如果不成功,可以尝试使用我在步骤一提供下载的驱动jar包,低版本的c3p0并不适用mysql 8.0以上。
实现方式二:配置xml文件
- 新建文件
c3p0-config.xml
(文件名只能是这个)。
对于IDEA,请将xml文件放在resources
文件夹下(见参考2)。
对于Eclipse,请将xml文件放在src
文件夹下。 编写xml文件内容:
<?xml version="1.0" encoding="UTF-8" ?> <c3p0-config> <named-config name="helloc3p0"> <!-- 提供获取连接的四个基本信息 --> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="jdbcUrl">jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC</property> <property name="user">mysql数据库账号</property> <property name="password">mysql数据库密码</property> <!-- 进行数据库连接池管理的基本信息 --> <property name="acquireIncrement">50</property> <property name="initialPoolSize">10</property> <property name="minPoolSize">10</property> <property name="maxPoolSize">100</property> <property name="maxStatements">50</property> <property name="maxStatementsPerConnection">2</property> </named-config> </c3p0-config>
与方式一类似,请自行修改
数据库名
、mysql数据库账号
、mysql数据库密码
处的内容。
对于xml文件,对于setJdbcUrl
中加入的参数,不应该使用"&"
进行分隔,而应该使用"&"
进行分隔。编写测试方法:
@Test public void testGetConnection2() throws Exception { //获取C3P0数据库连接池 ComboPooledDataSource cpds = new ComboPooledDataSource("helloc3p0"); //此处与xml文件中<named-config name="helloc3p0">内的name保持一致即可 Connection conn = cpds.getConnection(); System.out.println(conn); conn.close(); }
运行测试方法,得到方式一中的输出则成功。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。