sql2o alternatives and similar libraries
Based on the "Database" category.
Alternatively, view sql2o alternatives based on common mentions on social networks and blogs.
-
MapDB
Embedded database engine that provides concurrent collections backed on disk or in off-heap memory. -
orientdb
OrientDB is the first Multi-Model DBMS with Document & Graph engine. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing, Reactive Queries and has a small memory footprint. OrientDB is licensed with Apache 2 license and the development is driven by OrientDB LTD and a worldwide Open Source community. -
ObjectBox embedded database
ObjectBox is a superfast lightweight database for objects (Java/Kotlin/...) -
Crate
Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. -
requery
A modern, lightweight but powerful object mapping and SQL generator. Easily map to or create databases, perform queries and updates from any platform that uses Java. -
JetBrains Xodus
JetBrains Xodus is a Java transactional schema-less embedded database used by JetBrains YouTrack and JetBrains Hub. -
Liquibase
Database-independent library for tracking, managing and applying database schema changes.
Get performance insights in less than 4 minutes
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of sql2o or a related project?
Popular Comparisons
README
sql2o

Sql2o is a small java library, with the purpose of making database interaction easy. When fetching data from the database, the ResultSet will automatically be filled into your POJO objects. Kind of like an ORM, but without the SQL generation capabilities. Sql2o requires at Java 7 or 8 to run. Java versions past 8 may work, but is currently not supported.
Examples
Check out the sql2o website for examples.
Performance
A key feature of sql2o is performance. The following metrics were based off the Dapper.NET metrics. Note that typical usage can differ from optimal usage for many frameworks. Depending on the framework, typical usage may not involve writing any SQL, or it may map underscore case to camel case, etc.
Performance of SELECT
Execute 1000 SELECT statements against a DB and map the data returned to a POJO. Code is available here.
Method | Duration |
---|---|
Hand coded ResultSet | 60ms |
Sql2o | 75ms (25% slower) |
Apache DbUtils | 98ms (63% slower) |
JDBI | 197ms (228% slower) |
MyBatis | 293ms (388% slower) |
jOOQ | 447ms (645% slower) |
Hibernate | 494ms (723% slower) |
Spring JdbcTemplate | 636ms (960% slower) |
Contributing
Want to contribute? Awesome! Here's how to set up.
Coding guidelines.
When hacking sql2o, please follow these coding guidelines.
Note on running Oracle specific tests
In order to run the Oracle database tests you will have to add the Oracle Maven repo to your settings.xml as instructed in the Oracle Fusion Middleware Maven Setup guide