Выбор библиотеки пула Java JDBC в 2011/2012?

Какую библиотеку пула соединений JDBC я должен использовать для нового проекта приложения (а не веб-приложения)?

  • Apache DBCP имеет достаточно нерешенные проблемы, которые доводятся до 2.0, я думаю.
  • C3P0, похоже, прекращается.
  • И оба из них выглядят относительно медленно.
  • Proxool мертв.
  • DBPool почти нет сообщества (по крайней мере, я не нашел публичного - никаких форумов, нет списков рассылки...)
  • Apache Tomcat Pool выглядит непригодным для использования без Tomcat
  • Я нашел статью SQL Datasources на веб-сайте Oracle, но, похоже, ее можно применять только для апплетов, работающих в контейнерах, таких как сервлеты и веб-службы.

Должен ли я выбрать BoneCP? У меня нет огромных требований. Мне просто нужен хороший и простой в использовании пул подключений к базе данных, который находится в активной разработке. Библиотека, автор которой может отвечать на сообщения об ошибках, отвечает на некоторые конкретные вопросы и т.д.

Кстати, я использую только MySQL. Я обнаружил, что драйвер MySQL поддерживает интерфейс DriverManager, но я не уверен, действительно ли он объединяет соединения или нет.

Ответ 1

Вы провели хорошие исследования. Я бы сказал, продолжайте с BoneCP. Несколько лет назад я бы предложил c3p0, но в настоящее время он некоторые открытые и нерешенные проблемы. Слишком плохо, на самом деле. Автор BoneCP, кстати, также активен здесь в SO.

Ответ 2

Возможно использование Tomcat Connection Pool без Tomcat, это всего лишь пара .jars, которые вы можете включить в любое программное обеспечение. Я успешно использовал Tomcat Connection Pool с Resin и Jetty серверы приложений.

Ответ 3

Другой альтернативой является Vibur DBCP. Это новый параллельный пул соединений JDBC на основе динамических прокси-серверов Java. Он быстрый, имеет сжатый исходный код, поддерживает параметр справедливости, кэширование Statement JDBC, ведение журнала запросов SQL и многие другие функции.

Vibur DBCP доступен в центральном репозитории Maven, на веб-сайте показана необходимая зависимость Maven, различные примеры конфигурации (с Spring, Hibernate 3.x/4.x/5.x) и все параметры конфигурации.

Vibur DBCP требует Java 1.7.

Отказ от ответственности: я автор Vibur DBCP.

Ответ 4

Я знаю, что слишком поздно для ответа, но я только что нашел интересную ссылку , которая предоставила более широкие возможности для ответа на большинство ваших запросов. Но в конце HikariCP и BoneCP намного лучше, чем другие параметры.