Querydsl is a framework which enables the construction of type-safe SQL-like queries for multiple backends including JPA, MongoDB and SQL in Java.
Instead of writing queries as inline strings or externalizing them into XML files they are constructed via a fluent API.
Use these tutorials to get started
- Querying JPA
- Querying SQL
- Querying Mongodb
- Querying Lucene
- Querying Collections
- Querydsl Spatial
- Querying JDO
Querydsl example projects
Free support is provided in the Querydsl Google Group https://groups.google.com/forum/#!forum/querydsl
How to build
Querydsl provides releases via public Maven repositories, but you can build the sources also yourself like this
$ cd querydsl-root $ mvn -DskipTests=true clean install
For more information visit the project homepage at http://www.querydsl.com/.
For running tests, a Vagrant/Puppet setup is provided. It is based on Ubuntu 12.04 and comes with the following databases:
- Oracle Express Edition 11g
- PostgreSQL 9.1.10
- MySQL 5.5.34
- Cubrid 9.2
You will need to install VirtualBox, Puppet, Vagrant, the vagrant-vbguest plugin and librarian-puppet. You will also need to
download the Oracle XE 11g installer file (
oracle-xe-11.2.0-1.0.x86_64.rpm.zip) manually and
place it in the
To launch the virtual machine:
$ cd devops $ librarian-puppet install $ vagrant up
All of the databases' default ports are forwarded to the host machine. See the Vagrantfile for details.
How to contribute
GitHub pull requests are the way to contribute to Querydsl.
If you are unsure about the details of a contribution, ask on the Querydsl Google Group or create a ticket on GitHub.
Querydsl uses Cloudbees for Jenkins based CI
As well as Travis CI for pull request validation