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

Overriding rename()

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

As of jOOQ 3.20.3, the rename() method is not declared in any super type yet, but it will be eventually, see #13937.

Occasionally, users will want to rename a table for the scope of a single query, rather than globally as with the runtime schema and table mapping feature. This can be done with Table.rename(Name):

// Overridden Book.rename() returns Book, not Table<Book>:
Book b = BOOK.rename("b");

// Type safe dereferencing of TableField:
Field<String> title = b.TITLE;

Unlike as(), this does not affect generated SQL other than assuming a table b of the same structure as BOOK exists in the schema.

If generating these overrides is not a desireable default, it can be deactivated explicitly globally using the following flag:

XML (standalone and maven)
Programmatic
Gradle (Kotlin)
Gradle (Groovy)
Gradle (third party)
<configuration>
  <generator>
    <database>
      <renameMethodOverrides>false</renameMethodOverrides>
    </database>
  </generator>
</configuration>

See the configuration XSD, standalone code generation, and maven code generation for more details.

new org.jooq.meta.jaxb.Configuration()
  .withGenerator(new Generator()
    .withDatabase(new Database()
      .withRenameMethodOverrides(false)
    )
  )

See the configuration XSD and programmatic code generation for more details.

import org.jooq.meta.jaxb.*


configuration {
  generator {
    database {
      isRenameMethodOverrides = false
    }
  }
}

See the configuration XSD and gradle code generation for more details.

configuration {
  generator {
    database {
      renameMethodOverrides = false
    }
  }
}

See the configuration XSD and gradle code generation for more details.

// The jOOQ-codegen-gradle plugin has been introduced in version 3.19.
// Please use the official plugin instead of the third party plugin that was recommended before.

Feedback

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

The jOOQ Logo