Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • jOOQ Masterclass
  • Toc
  • feedback
jOOQ Masterclass

jOOQ Masterclass

By : Anghel Leonard
4.6 (5)
close
jOOQ Masterclass

jOOQ Masterclass

4.6 (5)
By: Anghel Leonard

Overview of this book

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.
Table of Contents (26 chapters)
close
1
Part 1: jOOQ as a Query Builder, SQL Executor, and Code Generator
4
Part 2: jOOQ and Queries
11
Part 3: jOOQ and More Queries
16
Part 4: jOOQ and Advanced SQL
22
Part 5: Fine-tuning jOOQ, Logging, and Testing

What this book covers

Chapter 1, Starting jOOQ and Spring Boot, shows how to create a kickoff application that involves jOOQ and Spring Boot in Java/Kotlin under Maven/Gradle.

Chapter 2, Customizing the jOOQ Level of Involvement, covers the configurations (declarative and programmatic) needed for employing jOOQ as a type-safe query builder and executor. Moreover, we set up jOOQ to generate POJOs and DAOs on our behalf. We use Java/Kotlin under Maven/Gradle.

Chapter 3, jOOQ Core Concepts, discusses jOOQ core concepts such as fluent API, SQL syntax correctness, emulating missing syntax/logic, jOOQ result set, jOOQ records, type safety, CRUD binding, and inlining parameters.

Chapter 4, Building a DAO Layer (Evolving the Generated DAO Layer), shows how implementing a DAO layer can be done in several ways/templates. We tackle an approach for evolving the DAO layer generated by jOOQ.

Chapter 5, Tackling Different Kinds of SELECT, INSERT, UPDATE, DELETE, and MERGE Statements, covers different kinds of SELECT, INSERT, UPDATE, DELETE, and MERGE queries. For example, we cover nested SELECT, INSERT...DEFAULT VALUES, INSERT...SET queries, and so on.

Chapter 6, Tackling Different Kinds of JOIN Statements, tackles different kinds of JOIN. jOOQ excels on standard and non-standard JOIN. We cover INNER, LEFT, RIGHT, …, CROSS, NATURAL, and LATERAL JOIN.

Chapter 7, Types, Converters, and Bindings, covers the custom data types, conversion, and binding.

Chapter 8, Fetching and Mapping, being one of the most comprehensive chapters, covers a wide range of jOOQ fetching and mapping techniques, including JSON/SQL, XML/SQL, and MULTISET features.

Chapter 9, CRUD, Transactions, and Locking, covers jOOQ CRUD support next to Spring/jOOQ transactions and optimistic/pessimistic locking.

Chapter 10, Exporting, Batching, Bulking, and Loading, covers batching, bulking, and loading files into the database via jOOQ. We will do single-thread and multi-thread batching.

Chapter 11, jOOQ Keys, tackles the different kinds of identifiers (auto-generated, natural IDs, and composite IDs) from the jOOQ perspective.

Chapter 12, Pagination and Dynamic Queries, covers pagination and building dynamic queries. Mainly, all jOOQ queries are dynamic, but in this chapter, we will highlight this, and we will write several filters by gluing and reusing different jOOQ artifacts.

Chapter 13, Exploiting SQL Functions, covers window functions (probably the most powerful SQL feature) in the jOOQ context.

Chapter 14, Derived Tables, CTEs, and Views, covers derived tables and recursive Common Table Expressions (CTEs) in the jOOQ context.

Chapter 15, Calling and Creating Stored Functions and Procedures, covers stored procedures and functions in the jOOQ context. This is one of the most powerful and popular jOOQ features.

Chapter 16, Tackling Aliases and SQL Templating, covers aliases and SQL templating. As you'll see, this chapter contains a must-have set of knowledge that will help you to avoid common related pitfalls.

Chapter 17, Multitenancy in jOOQ, covers different aspects of multi-tenancy/partitioning.

Chapter 18, jOOQ SPI (Providers and Listeners), covers jOOQ providers and listeners. Using these kinds of artifacts, we can interfere with the default behavior of jOOQ.

Chapter 19, Logging and Testing, covers jOOQ logging and testing.

bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete