package util; import com.mchange.v2.c3p0.ComboPooledDataSource; import javax.sql.DataSource; import java.sql.*; public class DButilC3P0 { private static DataSource ds = null; static { ds = new ComboPooledDataSource("myc3p0"); } /** * 建立数据库连接,将数据库连接公有化,当要用到数据库连接时,就调这个方法,代码得到重用 * @return 返回的就是数据库的连接对象 */ public static Connection getConnection() { //建立数据库连接 Connection conn = null; try { conn = ds.getConnection(); } catch (SQLException e) { e.printStackTrace(); } return conn; } }
创建一个 c3p0-config.xml 然后格式如下
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <named-config name="myc3p0"> <property name="driverClass">com.mysql.jdbc.Driver</property> <!--数据库地址跟表单名字--> <property name="jdbcUrl">jdbc:mysql://localhost:3306/test</property> <!--数据库连接账号--> <property name="user">root</property> <!--数据库连接密码--> <property name="password">root</property> <!-- 如果池中数据连接不够时一次增长多少个 --> <property name="acquireIncrement">5</property> <property name="initialPoolSize">20</property> <property name="minPoolSize">10</property> <property name="maxPoolSize">40</property> <property name="maxStatements">0</property> <property name="maxStatementsPerConnection">5</property> </named-config> </c3p0-config>