JDBC for MySQL - Herong's Tutorial Examples - v3.13, by Herong Yang
C3P0 for Connection Pooling
This section provides a quick introduction on C3P0, which is a popular open source JDBC database connection pool library developed by Steve Waldman.
C3P0 is a mature and highly concurrent JDBC Connection pooling library developed by Steve Waldman. It supports caching and reuse of Connections and PreparedStatements. Here is what I did to download C3P0 on my local computer.
1. Go to C3P0 sourceforge.net site at https://sourceforge.net/projects/c3p0/.
2. Click "Files > c3p0-bin > c3p0-0.9.5.5" and download "c3p0-0.9.5.5.bin.zip".
3. Unzip the download file to get the JAR file:
c3p0-0.9.5.5/lib 501615 Dec 11 2019 c3p0-0.9.5.5.jar 2723 Dec 11 2019 c3p0-oracle-thin-extras-0.9.5.5.jar 630956 Dec 11 2019 mchange-commons-java-0.2.19.jar
According to the documentation, we have 2 options to create a connection pool with C3P0:
1. Using com.mchange.v2.c3p0.ComboPooledDataSource class, which implements the standard JDBC javax.sql.DataSource interface to manage the connection pool with JavaBean style properties.
2. Using com.mchange.v2.c3p0.DataSources class, which converts a unpooled DataSource to a pooled DataSource using PoolBackedDataSource with default configurations.
To use C3P0 0.9.5.5, for most JDBC operations, you only need c3p0-0.9.5.5.jar file and the JDBC drive JAR file for your specific database server.
Table of Contents
JDBC (Java Database Connectivity) Introduction
MySQL JDBC Driver (MySQL Connector/J)
MySQL - Reference Implementation of JdbcRowSet
MySQL - JBDC CallableStatement
MySQL CLOB (Character Large Object) - TEXT
MySQL BLOB (Binary Large Object) - BLOB
►Using Connection Pool with JDBC
What Is Database Connection Pool
Commons DBCP for Connection Pooling
Connection Pooling with Commons DBCP BasicDataSource
Connection Pooling with Commons DBCP PoolingDriver
Connection Pooling with C3P0 ComboPooledDataSource