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

生成的表

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

数据库中的每个表和视图都将生成一个 org.jooq.Table 实现,如下所示

public class Book extends TableImpl<BookRecord> {

    // The singleton instance
    public static final Book BOOK = new Book();

    // Generated columns
    public final TableField<BookRecord, Integer> ID        = createField("ID",        INTEGER, this);
    public final TableField<BookRecord, Integer> AUTHOR_ID = createField("AUTHOR_ID", INTEGER, this);
    public final TableField<BookRecord, String>  TITLE     = createField("TITLE",     VARCHAR, this);

    // Covariant aliasing method, returning a table of the same type as BOOK
    @Override
    public Book as(java.lang.String alias) {
        return new Book(alias);
    }

    // [...]
}

影响生成的表的标志

来自 代码生成配置 的这些标志会影响生成的表

  • recordVersionFields:覆盖超类中的相关方法以返回 VERSION 字段
  • recordTimestampFields:覆盖超类中的相关方法以返回 TIMESTAMP 字段
  • syntheticPrimaryKeys:这会覆盖现有的主键信息,以允许“自定义”主键列集
  • overridePrimaryKeys:这会覆盖现有的主键信息,以允许将唯一键提升为主键
  • dateAsTimestamp:这会影响所有相关列
  • unsignedTypes:这会影响所有相关列
  • relations:覆盖超类中的相关方法以提供主键、唯一键、外键和标识信息
  • instanceFields:此标志控制表列上的“static”关键字以及别名便利性
  • records:生成的记录类型从表中引用,从而允许类型安全的单表记录获取

控制表生成的标志

XML(独立和 Maven)
编程方式
Gradle (Kotlin)
Gradle (Groovy)
Gradle(第三方)
<configuration>
  <generator>
    <generate>
      <!-- Allows for turning on tables generation: default true -->
      <tables>true</tables>
    </generate>
  </generator>
</configuration>

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

new org.jooq.meta.jaxb.Configuration()
  .withGenerator(
    new Generate()

      // Allows for turning on tables generation: default true
      .withTables(true)
  )

有关更多详细信息,请参见 配置 XSD编程代码生成

import org.jooq.meta.jaxb.*


configuration {
  generator {
    generate {

      // Allows for turning on tables generation: default true
      isTables = true
    }
  }
}

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

configuration {
  generator {
    generate {

      // Allows for turning on tables generation: default true
      tables = true
    }
  }
}

有关更多详细信息,请参见 配置 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