[课本10.1.4]JDBC数据库连接池- C3P0数据源--通过构造方法创建数据源对象--通过配置文件创建数据源对象[推荐]
Posted 好好学习,天天向上
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[课本10.1.4]JDBC数据库连接池- C3P0数据源--通过构造方法创建数据源对象--通过配置文件创建数据源对象[推荐]相关的知识,希望对你有一定的参考价值。
JDBC- C3P0数据源
1 /*重点提醒*/ 2 连接数据库的较低的jar包版本会与较高版本的mysql版本有冲突; 3 通过把mysql 8.0的版本降到5.5, jar包仍使用较高的 mysql-connector-java-5.1.7-bin.jar, 完美解决冲突.
1-通过构造方法创建数据源对象
package C3P0数据源; import com.mchange.v2.c3p0.ComboPooledDataSource; import javax.sql.DataSource; import java.beans.PropertyVetoException; import java.sql.*; public class Example03_textbook_P291 { public static DataSource ds=null; //初始化C3P0 数据源 ,设置为静态代码块,可以自动加载 static { ComboPooledDataSource cpds=new ComboPooledDataSource(); //设置连接数据库需要的配置信息 try { cpds.setDriverClass("com.mysql.jdbc.Driver"); cpds.setJdbcUrl("jdbc:mysql://localhost:3306/jdbc"); cpds.setUser("root"); cpds.setPassword("123456"); //设置数据库连池的参数 cpds.setInitialPoolSize(5); cpds.setMaxPoolSize(15); ds=cpds; } catch (PropertyVetoException e) { e.printStackTrace(); } } public static void main(String[] args) throws SQLException { //获取数据库连接对象 System.out.println(ds.getConnection()); } }
2-通过读取配置文件创建数据源对象
放置文件到src下:
c3p0-config.xml
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <named-config name="szs"> <property name="user">root</property> <property name="password">123456</property> <property name="jdbcUrl">jdbc:mysql://localhost:3306/jdbc</property> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="acquireIncrement">2</property> <property name="initialPoolSize">5</property> <property name="minPoolSize">5</property> <property name="maxPoolSize">10</property> <property name="maxStatements">20</property> <property name="maxStatementsPerConnection">5</property> </named-config> </c3p0-config>
Example04.java 测试类
package C3P0数据源; import com.mchange.v2.c3p0.ComboPooledDataSource; import javax.sql.DataSource; import java.sql.SQLException; public class Example04 { public static DataSource ds=null; static { //使用配置文件中的named-config节点中的name属性 ComboPooledDataSource cpds=new ComboPooledDataSource("szs"); ds=cpds; } public static void main(String[] args) throws SQLException { System.out.println(ds.getConnection()); System.out.println(); } }
以上是关于[课本10.1.4]JDBC数据库连接池- C3P0数据源--通过构造方法创建数据源对象--通过配置文件创建数据源对象[推荐]的主要内容,如果未能解决你的问题,请参考以下文章
数据连接池(c3p0+druid)及JDBC Template
DBCP,C3P0与Tomcat jdbc pool 连接池的比较