Я только начал использовать BoneCP и впервые использую пул соединений. Я несколько смущен тем, как я должен его использовать. В настоящее время я сохраняю объект BoneCP как статическую переменную и, таким образом, могу использовать его между разными соединениями.
Когда я закончу с соединением, я закрываю его с помощью connection.close ()
.
Следует ли мне это сделать или не закрывать его, чтобы его можно было повторно использовать в пуле?
Это моя текущая реализация для получения соединения:
private static BoneCP connectionPool;
public Connection getConnection() throws SQLException {
if (connectionPool == null) {
initPool();
}
return connectionPool.getConnection();
}
private void initPool() throws SQLException {
BoneCPConfig config = new BoneCPConfig();
config.setJdbcUrl(DB_URL);
config.setUsername(DB_USERNAME);
config.setPassword(DB_PASSWORD);
config.setMinConnectionsPerPartition(5);
config.setMaxConnectionsPerPartition(10);
config.setPartitionCount(1);
connectionPool = new BoneCP(config);
}
Кажется ли это правильным, или я неправильно понял, как я должен использовать BoneCP?