jOOQ Masterclass: A practical guide for Java developers to write SQL queries for complex database interactions
暫譯: jOOQ 大師班:Java 開發者撰寫 SQL 查詢以進行複雜資料庫互動的實用指南

Leonard, Anghel

  • 出版商: Packt Publishing
  • 出版日期: 2022-08-19
  • 售價: $1,940
  • 貴賓價: 9.5$1,843
  • 語言: 英文
  • 頁數: 764
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1800566891
  • ISBN-13: 9781800566897
  • 相關分類: Java 程式語言SQL資料庫
  • 立即出貨 (庫存=1)

買這商品的人也買了...

相關主題

商品描述

Learn the best way to write SQL in Java by taking control of SQL in your app via a type-safe, dynamic and versatile API that supports almost any type or feature compatible with a database and emphasizes SQL syntax correctness

Key Features

- Write complex, type-safe, and dynamic SQL using the powerful jOOQ API
- Tackle complex persistence tasks, such as lazy fetching, R2DBC, transactions, and batching while sustaining high traffic in your modern Java applications
- Use a comprehensive SPI to shape and extend jOOQ according to your needs

Book Description

jOOQ is an excellent query builder framework that allows you to emulate database-specific SQL statements using a fluent, intuitive, and flexible DSL API. jOOQ is fully capable of handling the most complex SQL in more than 30 different database dialects.

jOOQ Masterclass covers jOOQ from beginner to expert level using examples (for MySQL, PostgreSQL, SQL Server, and Oracle) that show you how jOOQ is a mature and complete solution for implementing the persistence layer. You'll learn how to use jOOQ in Spring Boot apps as a replacement for SpringTemplate and Spring Data JPA. Next, you'll unleash jOOQ type-safe queries and CRUD operations via jOOQ's records, converters, bindings, types, mappers, multi-tenancy, logging, and testing. Later, the book shows you how to use jOOQ to exploit powerful SQL features such as UDTs, embeddable types, embedded keys, and more. As you progress, you'll cover trending topics such as identifiers, batching, lazy loading, pagination, and HTTP long conversations. For implementation purposes, the jOOQ examples explained in this book are written in the Spring Boot context for Maven/Gradle against MySQL, Postgres, SQL Server, and Oracle.

By the end of this book, you'll be a jOOQ power user capable of integrating jOOQ in the most modern and sophisticated apps including enterprise apps, microservices, and so on.

What you will learn

- Enable the jOOQ Code Generator in any combination of Java and Kotlin, Maven and Gradle
- Generate jOOQ artifacts directly from database schema, or without touching the real database
- Use jOOQ DSL to write and execute a wide range of queries for different databases
- Understand jOOQ type-safe queries, CRUD operations, converters, bindings, and mappers
- Implement advanced SQL concepts such as stored procedures, derived tables, CTEs, window functions, and database views
- Implement jOOQ multi-tenancy, tuning, jOOQ SPI, logging, and testing

Who this book is for

This book is for Java developers who write applications that interact with databases via SQL. No prior experience with jOOQ is assumed.

商品描述(中文翻譯)

透過一個類型安全、動態且多功能的 API,學習在 Java 中以最佳方式撰寫 SQL,該 API 支援幾乎所有與資料庫相容的類型或功能,並強調 SQL 語法的正確性。

主要特點

- 使用強大的 jOOQ API 撰寫複雜的、類型安全的和動態的 SQL

- 處理複雜的持久性任務,例如延遲擷取、R2DBC、交易和批次處理,同時在現代 Java 應用程式中維持高流量

- 使用全面的 SPI 根據您的需求塑造和擴展 jOOQ

書籍描述

jOOQ 是一個優秀的查詢生成框架,允許您使用流暢、直觀且靈活的 DSL API 模擬特定於資料庫的 SQL 語句。jOOQ 完全能夠處理超過 30 種不同資料庫方言中最複雜的 SQL。

《jOOQ 大師班》涵蓋了從初學者到專家的 jOOQ 使用,通過示例(針對 MySQL、PostgreSQL、SQL Server 和 Oracle)展示 jOOQ 是實現持久層的成熟且完整的解決方案。您將學習如何在 Spring Boot 應用程式中使用 jOOQ 作為 SpringTemplate 和 Spring Data JPA 的替代方案。接下來,您將通過 jOOQ 的記錄、轉換器、綁定、類型、映射器、多租戶、日誌記錄和測試來釋放 jOOQ 的類型安全查詢和 CRUD 操作。稍後,書中將展示如何使用 jOOQ 利用強大的 SQL 功能,例如 UDT、可嵌入類型、嵌入鍵等。隨著進展,您將涵蓋趨勢主題,例如標識符、批次處理、延遲加載、分頁和 HTTP 長連接。為了實現目的,本書中解釋的 jOOQ 示例是在 Spring Boot 環境中針對 MySQL、Postgres、SQL Server 和 Oracle 的 Maven/Gradle 寫成的。

在本書結束時,您將成為 jOOQ 的高級用戶,能夠在最現代和複雜的應用程式中整合 jOOQ,包括企業應用程式、微服務等。

您將學到什麼

- 在任何 Java 和 Kotlin、Maven 和 Gradle 的組合中啟用 jOOQ 代碼生成器

- 直接從資料庫架構生成 jOOQ 藝術品,或在不接觸實際資料庫的情況下生成

- 使用 jOOQ DSL 撰寫和執行針對不同資料庫的各種查詢

- 理解 jOOQ 的類型安全查詢、CRUD 操作、轉換器、綁定和映射器

- 實現高級 SQL 概念,例如存儲過程、派生表、CTE、窗口函數和資料庫視圖

- 實現 jOOQ 的多租戶、調優、jOOQ SPI、日誌記錄和測試

本書適合誰

本書適合撰寫通過 SQL 與資料庫互動的 Java 開發人員。不需要具備 jOOQ 的先前經驗。

作者簡介

Anghel Leonard is a chief technology strategist and independent consultant with 20+ years of experience in the Java ecosystem. In his daily work, he is focused on architecting and developing Java-distributed applications that empower robust architectures, clean code, and high performance. He is also passionate about coaching, mentoring, and technical leadership. He is the author of several books, videos, and dozens of articles related to Java technologies.

作者簡介(中文翻譯)

安赫爾·倫納德(Anghel Leonard)是一位首席技術策略師和獨立顧問,擁有超過20年的Java生態系統經驗。在他的日常工作中,他專注於架構設計和開發Java分散式應用程式,這些應用程式能夠支持穩健的架構、乾淨的代碼和高效能。他也熱衷於指導、輔導和技術領導。他是多本書籍、視頻以及數十篇與Java技術相關的文章的作者。

目錄大綱

1. Starting jOOQ and Spring Boot
2. Customizing the jOOQ Level of Involvement
3. jOOQ Core Concepts
4. Building a DAO Layer (Evolving the Generated DAO Layer)
5. Tackling Different Kinds of SELECT, INSERT, UPDATE, DELETE, and MERGE Statements.
6. Tackling Different Kinds of JOIN Statements
7. Types, Converters, and Binding
8. Fetching and Mapping
9. CRUD, Transactions, and Locking
10. Exporting, Batching, Bulking, and Loading
11. jOOQ Keys
12. Pagination and Dynamic Queries
13. Exploiting SQL Functions
14. Derived Tables, CTEs, and Views
15. Calling and Creating Stored Functions and Procedures
16. Tackling Aliases and SQL Templating
17. Multitenancy in jOOQ
18. jOOQ SPI (Providers and Listeners)
19. Logging and Testing

目錄大綱(中文翻譯)

1. Starting jOOQ and Spring Boot

2. Customizing the jOOQ Level of Involvement

3. jOOQ Core Concepts

4. Building a DAO Layer (Evolving the Generated DAO Layer)

5. Tackling Different Kinds of SELECT, INSERT, UPDATE, DELETE, and MERGE Statements.

6. Tackling Different Kinds of JOIN Statements

7. Types, Converters, and Binding

8. Fetching and Mapping

9. CRUD, Transactions, and Locking

10. Exporting, Batching, Bulking, and Loading

11. jOOQ Keys

12. Pagination and Dynamic Queries

13. Exploiting SQL Functions

14. Derived Tables, CTEs, and Views

15. Calling and Creating Stored Functions and Procedures

16. Tackling Aliases and SQL Templating

17. Multitenancy in jOOQ

18. jOOQ SPI (Providers and Listeners)

19. Logging and Testing