Available in versions: Dev (3.21) | Latest (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

Class names, method names, identifiers

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

By default, generated class names, method names, identifiers, etc. follow Java's typical naming conventions.

Assuming a table like this:

CREATE TABLE account_transactions (
  id INTEGER NOT NULL,
  created_at TIMESTAMP NOT NULL,
  created_by VARCHAR(100) NOT NULL,
  ...
);

As a rule of thumb, the following defaults can be assumed for named objects:

  • Class names follow PascalCase naming, i.e. the org.jooq.Table class name is AccountTransactions
  • Records have a Record suffix, i.e. the org.jooq.UpdatableRecord class name is AccountTransactionsRecord
  • Daos have a Dao suffix, i.e. the org.jooq.DAO class name is AccountTransactionsDao
  • Identifiers follow SNAKE_CASE naming, i.e. the org.jooq.Table instance name is ACCOUNT_TRANSACTIONS
  • Path methods follow a camleCase naming, i.e. the org.jooq.Path method name is accountTransactions() (e.g. on a child table)

If these defaults do not convene, or if a workaround needs to be applied for a limitation of the default naming, generator strategies allow for overriding these defaults.

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo