Легкая вспомогательная библиотека JDBC, альтернативная Apache Commons DbUtils

Я только что разработал свою небольшую небольшую библиотеку JDBC-помощника, и я уже понял, какой кошмар для обслуживания он будет.

Я не ищу полноценный ORM, например Hibernate, просто что-то легкое и полезное, чтобы быстро заставить JDBC называть передачи SQL-инструкций, не впадая в проверенные исключения, закрывая ресурсы вручную и т.д.

Из вашего опыта, вы можете порекомендовать приятную JDBC-библиотеку?

До сих пор я смотрел Apache Commons DbUtils, который кажется довольно хорошим. Любая другая идея?

Ответ 1

Вот список инструментов, которые "облегчают боль" при взаимодействии с простым JDBC:

  • Spring JdbcTemplate
  • jOOQ (может использоваться также с строками SQL - отказ от ответственности: я работаю для поставщика)
  • Apache DbUtils (о котором вы уже упоминали)
  • JDBI
  • sql2o
  • persism

Ответ 2

Там также ORMLite и MyBatis которые также довольно легкие. Использование spring, и это rowmappers довольно просто, но вам нужно иметь дело напрямую с JDBC. Что-то наподобие любого из вышеперечисленных, будет скрыто от этого далеко от вас, но не слишком сложным, как спящий режим.

Ответ 3

https://code.google.com/p/jdbc-helper/

Вот описание, которое я скопировал с его страницы проекта: Вдохновленный Spring проектами Jdbctemplate и Commons Dbutils, JdbcHelper - очень маленькая библиотека, помогающая разработчикам кодировать общие операции jdbc. JdbcHelper очень легкий. Это только ~ 70K, и он не имеет внешних зависимостей.

Ответ 4

Существует Yank, который является ультралегким уровнем устойчивости JDBC, который обертывает DBUtils. Чтобы использовать его, вы создаете для каждой таблицы POJO и DAO Class. Вы пишете свои собственные SQL-запросы и выполняете запросы через класс DBProxy. Вам не нужно иметь дело с Connections, ResultSets и другими низкоуровневыми JDBC-кодами. Янь банка составляет всего 13 КБ с версии 2.0.0, и это зависит только от SLF4J, DBUtils и сторонней базы данных, какой бы технологии баз данных вы не использовали.

Ответ 5

Spring Framework (spring -dao) - ваш друг. Если вы правильно программируете свои интерфейсы, позже (при условии, что это будет необходимо) вы можете легко переключиться на нечто более мощное, как Hibernate. Также не стоит недооценивать Hibernate: Native SQL дает вам полную полноту SQL и все же вы можете воспользоваться отображением объектов - что-то, что вам придется в любом случае, если вам просто нужно выполнить запросы так же просто, как select count(*) from ....