A low-level Clojure wrapper for JDBC-based database access, now superseded by next.jdbc.
clojure.java.jdbc is a low-level Clojure library that provides a functional wrapper around JDBC for database access. It simplifies interacting with relational databases by abstracting JDBC boilerplate while allowing direct SQL usage. The library is now inactive and has been superseded by next.jdbc, which offers a more modern API.
Clojure developers who need a straightforward, low-level interface to relational databases using JDBC, particularly those maintaining legacy codebases or learning JDBC integration in Clojure.
Developers choose clojure.java.jdbc for its maturity, stability, and simplicity—it's a battle-tested library with extensive documentation and community usage. However, for new projects, next.jdbc is recommended as a faster, more modern alternative.
JDBC from Clojure (formerly clojure.contrib.sql)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Widely used for years with extensive documentation in books and tutorials, making it a battle-tested choice for legacy codebases.
Provides a thin Clojure layer over JDBC, allowing direct SQL operations with minimal abstraction, as shown in examples using raw SQL strings and parameters.
Works with common databases like PostgreSQL, MySQL, and SQLite, supported by listed JDBC driver dependencies in the README.
Offers flexible options such as :row-fn and :result-set-fn for transforming query results, enabling tailored data handling.
Explicitly marked as inactive and superseded by next.jdbc, with only critical bug fixes and no new features, limiting long-term viability.
Requires separate addition of JDBC driver dependencies, adding setup complexity compared to libraries with integrated or automatic driver handling.
Has undergone breaking changes with deprecated functions removed over time, as noted in the change log, risking compatibility issues in older code.
Admits next.jdbc is faster and more modern, making clojure.java.jdbc less optimal for performance-sensitive applications.