Connection Pools with MariaDB Connector/R2DBC (Native API)
Connection Pool Classes
Class
Description
Code Example: Initialize Connection Pool
// Module Imports
import java.time.Duration;
import io.r2dbc.pool.ConnectionPool;
import io.r2dbc.pool.ConnectionPoolConfiguration;
import org.mariadb.r2dbc.MariadbConnectionConfiguration;
import org.mariadb.r2dbc.MariadbConnectionFactory;
public class App {
// Attributes
private MariadbConnectionFactory connFactory;
private ConnectionPool pool;
// Main Process
public static void main(String[] args) {
App app = new App();
app.createConnectionPool();
}
public void createConnectionPool() {
try {
// Configure and Create Connection Factory
MariadbConnectionConfiguration factoryConfig = MariadbConnectionConfiguration
.builder().host("192.0.2.1").port(3306)
.username("db_user").password("db_user_password")
.database("test").build();
this.connFactory = new MariadbConnectionFactory(factoryConfig);
// Configure Connection Pool
ConnectionPoolConfiguration poolConfig = ConnectionPoolConfiguration
.builder(connFactory)
.maxIdleTime(Duration.ofMillis(1000))
.maxSize(20)
.build();
this.pool = new ConnectionPool(poolConfig);
}
// Catch Exception
catch (IllegalArgumentException e) {
System.err.println("Issue creating connection pool");
e.printStackTrace();
} finally {
// Close Connection
pool.close();
}
}
}Code Example: Retrieve Connections
Code Example: Close Connection
PreviousConnect with MariaDB Connector/R2DBC (Native API)NextDDL with MariaDB Connector/R2DBC (Native API)
Last updated
Was this helpful?

