What is Torque?

Apache Torque is an object-relational mapper for java. In other words, Torque lets you access and manipulate data in a relational database using java objects. Unlike most other object-relational mappers, Torque does not use reflection to access user-provided classes, but it generates the necessary classes (including the Data Objects) from an XML schema describing the database layout. The XML file can either be written by hand or a starting point can be generated from an existing database. The XML schema can also be used to generate and execute a SQL script which creates all the tables in the database.

As Torque hides database-specific implementation details, Torque makes an application independent of a specific database if no exotic features of the database are used.

Usage of code generation eases the customization of the database layer, as you can override the generated methods and thus easily change their behavior. A modularized template structure allows inclusion of your own code generation templates during the code generation process.


  • The most recent production release of Torque is Torque 3.3.
  • The most recent development version of Torque is Torque 4.0-beta1.

Elements of Torque 4

Torque consists of multiple parts:

The Torque runtime contains everything to allow an application to access the database. It is the only component of Torque needed in your application and can be used standalone.
The generator generates the java sources for the database access classes used in your application. If you use the Maven plugin or Ant tasks, you do not need to use the generator directly.
The Torque Maven plugin makes the Torque generator accessible in a Maven 2/3 build.
The Torque Ant tasks integrate the Torque generator in an Ant build.
The templates contain the building blocks used by the generator to create the O/R peer and object classes, SQL scripts and the like. You can extend or change the templates if you want to customize the output of the generator, or even write templates of your own.

The Apache Software Foundation

Torque is an Apache project, and is part of a larger community of developers and users.

Apache Torque, Torque, Apache, the Apache feather logo, and the Apache Torque project logo are trademarks of The Apache Software Foundation.