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

jOOQ 的不同用例

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

jOOQ 最初是作为一个库而创建的,用于完全抽象 JDBC 和所有数据库交互。它还应用了在现有软件产品中经常遇到的各种最佳实践。这包括:

  • 通过生成的 schema、table、column、record、procedure、type、dao、pojo 构件实现类型安全的数据库对象引用(请参阅关于代码生成的章节)
  • 通过一个完整的查询 DSL API 实现类型安全的 SQL 构建/SQL 构造,将 SQL 建模为 Java 中的领域特定语言(请参阅关于查询 DSL API的章节)
  • 通过一个改进的结果获取 API 实现便捷的查询执行(请参阅关于各种类型的数据获取的章节)
  • SQL 方言抽象和 SQL 子句模拟,以提高跨数据库的兼容性并启用更简单数据库中缺失的功能(请参阅关于SQL 方言的章节)
  • 使用 jOOQ 作为开发流程的组成部分进行 SQL 日志记录和调试(请参阅关于日志记录的章节)

实际上,jOOQ 最初的设计是为了取代除处理连接池(以及更复杂的事务管理)之外的任何其他数据库抽象框架。

按您喜欢的方式使用 jOOQ

……但是开源是社区驱动的。社区已经展示了各种偏离其最初意图使用 jOOQ 的方式。遇到的一些用例包括:

  • 对 70% 的查询(例如CRUD)使用 Hibernate,对剩余 30% 真正需要 SQL 的查询使用 jOOQ
  • 使用 jOOQ 进行 SQL 构建,使用 JDBC 进行 SQL 执行
  • 使用 jOOQ 进行 SQL 构建,使用 Spring Data 进行 SQL 执行
  • 在不使用源代码生成器的情况下使用 jOOQ,构建用于动态 SQL 执行的框架基础。

以下各节将介绍在您的应用程序中使用 jOOQ 的各种用例。

反馈

您对本页面有什么反馈吗? 我们非常乐意听到!

The jOOQ Logo