The following frameworks are similar in style to Querydsl, but have a different focus. Here is a compact comparison of features :
| Empire-db |
Flu |
JaQu |
JEQUEL |
JoSQL |
Liquidform |
Querydsl |
Quaere |
Squill |
|
|---|---|---|---|---|---|---|---|---|---|
| JPQL | |
|
|
|
|
x | x |
x |
|
| JDOQL |
x |
||||||||
| Lucene |
x | ||||||||
| Collections |
|
|
|
|
x |
|
x |
x |
|
| type-safe |
x |
x |
x |
x |
|
x |
x |
|
x |
| SQL |
x |
x |
x |
x |
|
|
x |
? |
x |
Flu
Flu on Google Code : How to write SQL in Java in a type safe manner.
Empire-db
Apache Empire-db is an Open Source relational data persistence component which allows database vendor independent dynamic query definition as well as safe and simple data retrieval and updating. Compared to most other solutions like e.g. Hibernate, TopLink, iBATIS or JPA implementations, Empire-db takes a considerably different approach, with a special focus on compile-time safety, reduced redundancies and improved developer productivity.
JaQu
JaQu stands for Java Query and allows to access databases using pure Java. JaQu provides a fluent interface (or internal DSL) for building SQL statements. JaQu replaces SQL, JDBC, and object/relation frameworks such as Hibernate. JaQu is something like LINQ for Java (LINQ stands for "language integrated query" and is a Microsoft .NET technology).
JEQUEL
JEQUEL is a Domain Specific Language for the Structured Query Language (SQL) embedded in Java.
JoSQL
JoSQL (SQL for Java Objects) provides the ability for a developer to apply a SQL statement to a collection of Java Objects. JoSQL provides the ability to search, order and group ANY Java objects and should be applied when you want to perform SQL-like queries on a collection of Java Objects.
Liquidform
LIQUidFORM stands for Language Integrated QUeries For Object Relational Mapping and is a Java library that provides a Java Domain Specific Language for building type-safe and refactoring proof JPA queries.
Quaere
Quaere is an open source, extensible framework that adds a querying syntax reminiscent of SQL to Java applications. Quaere allows you to filter, enumerate and create projections over a number of collections and other queryable resources using a common, expressive syntax.
Squill
Squill is a slick internal DSL for writing SQL queries in pure Java. It uses the database metadata and generics to catch as many errors as possible during compilation and is almost completely typesafe.