Quick Start Guide

Thank you for downloading Speedment. This guide will take you through the installation process. If you run into trouble or have questions, don’t hesitate to reach out to our developers and other users on Gitter.

For Open Source users intending to upgrade their project, please visit our guide on how to upgrade an existing project to the full version.


Before proceeding, make sure you have the following tools installed:

  • JDK 8.0.40 or later version
  • Apache Maven 3.3.9 or later version

1. Unzip the Project File

Start by unpacking the content of the downloaded zip-file. It contains a structured Speedment project with a pom.xml-file and a main.java.

2. Start the Speedment Tool

Speedment uses JSON configuration files to generate Java code from your database. The JSON files will be created using the Speedment Tool. You can choose to start the Tool from your IDE* or run it from the command line.

With the Command Line

Locate the directory of the pom.xml-file and run the following:

mvn speedment:tool

With Your IDE

Import the contents of the downloaded zip-file as a Maven project. A number of Maven goals associated with Speedment will be available. Use speedment:tool to connect to your database and generate a Java representation of the domain model.

Note: If you wish to use an existing JSON file, use speedment:generate instead.

Speedment Maven Goals

3. Pick a Speedment License

Speedment is free to use for projects that depend on a database containing less than 500 MB of data but still requires a Free License. For larger database sizes, you can either choose a 30-day Enterprise Trial or purchase an Enterprise License. A full comparison of plans is available here

Once the tool starts, go ahead and make your preferred selection.

Speedment Licensing

4. Connect to Your Database

Next, simply fill out the database credentials and hit Connect. For security reasons, Speedment never stores the database password in generated classes or configuration files.

5. Generate a Java Representation of the Database

Speedment now analyses the underlying data sources’ metadata and automatically creates code which directly reflects the structure (i.e. the “domain model”) of the data sources. Once finished, the database structure is visualized as a tree in the appearing window. To generate the object-oriented Java representation, press Generate.

6. Write Your Speedment Application

Once the files are generated, you are ready to write your first Java Stream query. In the folder containing the generated files, there is a generated application entry point. The entry point constitutes a base for your application and looks something like this:

public class DemoApplicationEntryPoint {
    public static void main(final String... args) {
        DemoApplication app = new DemoApplicationBuilder()

NOTE: The name of the application builder will differ depending on the

What’s next?

Now that you are up and running, it is time to start exploring the features of Speedment. We have gathered some resources below to help you get productive in no time.

Happy coding!

*Although these instructions might also work on other variants, we have only tested these instructions on the following IDEs:

  • Netbeans 8.2
  • IDEA 2018.1 Community Edition
  • Eclipse Oxygen