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

生成的 DAO

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

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

public class BookDao extends DAOImpl<BookRecord, Book, Integer> {

    // Generated constructors
    public BookDao() {
        super(BOOK, Book.class);
    }

    public BookDao(Configuration configuration) {
        super(BOOK, Book.class, configuration);
    }

    // Every column generates at least one fetch method
    public List<Book> fetchById(Integer... values) {
        return fetch(BOOK.ID, values);
    }

    public Book fetchOneById(Integer value) {
        return fetchOne(BOOK.ID, value);
    }

    public List<Book> fetchByAuthorId(Integer... values) {
        return fetch(BOOK.AUTHOR_ID, values);
    }

    // [...]
}
XML(独立和 Maven)
编程方式
Gradle (Kotlin)
Gradle (Groovy)
Gradle(第三方)
<configuration>
  <generator>
    <generate>

      <!-- Generate the DAO classes -->
      <daos>true</daos>

      <!-- Annotate DAOs (and other types) with spring annotations, such as @Repository and @Autowired
           for auto-wiring the Configuration instance, e.g. from Spring Boot's jOOQ starter -->
      <springAnnotations>true</springAnnotations>

      <!-- Generate Spring-specific DAOs containing @Transactional annotations -->
      <springDao>true</springDao>

      <!-- Optionally, limit DAOs generation to only tables matching this regular expression. -->
      <pojosIncludes>.*</pojosIncludes>

      <!-- Optionally, limit DAOs generation to only tables not matching this regular expression.
           Excludes match before includes. -->
      <pojosExcludes>SYSTEM_TABLE_.*</pojosExcludes>
    </generate>
  </generator>
</configuration>

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

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

      // Generate the DAO classes
      .withDaos(true)

      // Annotate DAOs (and other types) with spring annotations, such as @Repository and @Autowired
      // for auto-wiring the Configuration instance, e.g. from Spring Boot's jOOQ starter
      .withSpringAnnotations(true)

      // Generate Spring-specific DAOs containing @Transactional annotations
      .withSpringDao(true)

      // Optionally, limit DAOs generation to only tables matching this regular expression.
      .withPojosIncludes(".*")

      // Optionally, limit DAOs generation to only tables not matching this regular expression.
      // Excludes match before includes.
      .withPojosExcludes("SYSTEM_TABLE_.*")
  )

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

import org.jooq.meta.jaxb.*


configuration {
  generator {
    generate {

      // Generate the DAO classes
      isDaos = true

      // Annotate DAOs (and other types) with spring annotations, such as @Repository and @Autowired
      // for auto-wiring the Configuration instance, e.g. from Spring Boot's jOOQ starter
      isSpringAnnotations = true

      // Generate Spring-specific DAOs containing @Transactional annotations
      isSpringDao = true

      // Optionally, limit DAOs generation to only tables matching this regular expression.
      pojosIncludes = ".*"

      // Optionally, limit DAOs generation to only tables not matching this regular expression.
      // Excludes match before includes.
      pojosExcludes = "SYSTEM_TABLE_.*"
    }
  }
}

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

configuration {
  generator {
    generate {

      // Generate the DAO classes
      daos = true

      // Annotate DAOs (and other types) with spring annotations, such as @Repository and @Autowired
      // for auto-wiring the Configuration instance, e.g. from Spring Boot's jOOQ starter
      springAnnotations = true

      // Generate Spring-specific DAOs containing @Transactional annotations
      springDao = true

      // Optionally, limit DAOs generation to only tables matching this regular expression.
      pojosIncludes = ".*"

      // Optionally, limit DAOs generation to only tables not matching this regular expression.
      // Excludes match before includes.
      pojosExcludes = "SYSTEM_TABLE_.*"
    }
  }
}

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