When comparing Hibernate ORM vs JDBI, the Slant community recommends JDBI for most people. In the question“What are the best Java ORMs (including JPA implementations (Java Persistence API))?” JDBI is ranked 1st while Hibernate ORM is ranked 2nd. The most important reason people chose JDBI is:
Its dependency tree is very small, which helps to avoid dependency conflicts with other packages. The documentation is easy to understand, is very easy to find and it is very concise.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Leader
There are countless great books and articles, it's taught at universities, and easy to find both skilled labour and advanced consultants .
Pro OSS
Fully open source, managed by the tought leaders in the Java community, decision making is open yet sponsored and legally backed by Red Hat.
Pro Advanced extension points
Hibernate ORM sports several advanced extensions such as Hibernate Search providing Lucene and Elasticsearch full-text search, Hibernate Spatial for GIS extensions, Envers for versioning and temporal queries, Hibernate OGM to use NoSQL as your primary datastore, advanced caching integrations and various connection pools.
Pro Actively maintained
Hibernate was very innovative from the beginning but is still very actively developed, improving significantly every release.
Pro High Performance
ORMs are typically not easy to scale yet the Hibernate team has been very sensitive to this topic, constantly optimising the code further and adding various advanced features to avoid paying a high cost for the convenience.
Pro Extensive integration points
Most other successful projects in the Java community integrate with Hibernate, making integration often a solved problem.
Pro Very lightweight and easy to use
Its dependency tree is very small, which helps to avoid dependency conflicts with other packages. The documentation is easy to understand, is very easy to find and it is very concise.
Pro Very lightweight but not lots of boiler-plate
Pro Takes advantage of Lambda expressions
Fluent api takes advantage of lambda expressions and functional programming included in Java 8.
Pro Easy to use
Just need to add a dependency and create an instance of Jdbi, the fluent api makes it really easy to inspect methods.
Pro Flexible
Is very flexible, you can create your own queries and your own mappers optimized for your database.