可用版本: Dev (3.21) | 最新 (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

重写 rename()

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

从 jOOQ 3.20.5 开始,rename() 方法尚未在任何超类型中声明,但最终会声明,请参阅 #13937

有时,用户可能希望在单个查询的范围内重命名表,而不是像使用 运行时模式和表映射 功能那样全局重命名。 这可以使用 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;

as() 不同,这不会影响生成的 SQL,除非假设模式中存在与 BOOK 结构相同的表 b

如果生成这些重写不是一个理想的默认设置,可以使用以下标志显式地全局禁用它

XML(独立和 Maven)
编程方式
Gradle (Kotlin)
Gradle (Groovy)
Gradle(第三方)
<configuration>
  <generator>
    <database>
      <renameMethodOverrides>false</renameMethodOverrides>
    </database>
  </generator>
</configuration>

有关更多详细信息,请参阅配置 XSD独立代码生成maven 代码生成

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

有关更多详细信息,请参阅配置 XSD程序化代码生成

import org.jooq.meta.jaxb.*


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

有关更多详细信息,请参阅配置 XSDgradle 代码生成

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

有关更多详细信息,请参阅配置 XSDgradle 代码生成

// 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.

反馈

您对此页面有任何反馈吗? 我们很乐意听到它!

The jOOQ Logo