Ваш вопрос немного двусмысленный:
Вы хотите homegrow реализацию пула соединений? Если это так, то это хорошая отправная точка: http://java.sun.com/developer/onlineTraining/Programming/JDCBook/conpool.html Но это крайне нежелательно для производственных сред. Лучше использовать существующий и тщательно протестированный API пула соединений, например DBCP или C3P0 .
Или вы хотите знать, как использовать пул соединений? Если это так, ответ зависит от используемого вами API пула соединений. К счастью, он обычно доступен на веб-сайте соответствующего API.
Или вы хотите узнать, когда / почему использовать пул соединений? Если это так, это, несомненно, повысит производительность соединения, если у вас есть долгоживущее приложение (например, веб-приложение), и вам нужно подключаться к базе данных чаще, чем часто. Обычная практика JDBC состоит в том, чтобы: и закрыть Connection
, Statement
и ResultSet
в кратчайшем возможном объеме (то есть внутри того же самого блока метода). Поскольку подключение довольно дорого и может занять до 200 мс времени или даже больше, использование пула подключений намного быстрее. Он предоставляет соединения по требованию и заботится о фактическом закрытии соединения. Это, однако, не означает, что вы можете изменить способ написания JDBC, вам все равно нужно приобрести и закрыть их в кратчайшей возможной области. Единственное, что вам нужно изменить, - это способ подключения. Например. изменить с
connection = driverManager.getConnection();
до
connection = connectionPool.getConnection();
Больше никаких изменений не требуется, если ваш код JDBC хорошо написан.