Overview

TableTools is a Java toolkit for using SQL databases without writing a single line of SQL. Instead, use XML for defining the database schema, and a Java library for updating and retrieving data. See how it works!

Five reasons to use TableTools:

  1. Fast design of schema and code.
  2. Keep the database design in one place.
  3. Don't worry about peculiarities of specific SQL dialects.
  4. Use the collections API you are familiar with, instead of (the more cumbersome) JDBC.
  5. Compile-time syntax checking of Java code prevents run-time errors in SQL.

Key features:

  • Maven integration.
  • Support for SQL dialects: MySQL, hsqldb, Apache Derby.
  • Implementation of Java Collections interface to query SQL databases via JDBC.
  • Full spectrum database access: creating tables, dropping tables, inserting records, updating records, deleting records, and retrieving records.
  • Includes support for SQL features such as: table joins, table filters, ordering.

TableTools consists of three parts:

  • core: the core library which includes SQL generation in several SQL dialects.
  • collections: an API layer which uses the core library and the JDBC API to provide access to a database. Several SQL dialects are supported: MySQL, Apache Derby and hsqldb.
  • maven-schema-generation-plugin: a Maven plugin which generates a database schema as an implementation of the net.sf.tabletools.model.Schema interface. An XML schema definition is required as input.