
Practice! Querydsl
yh
Solve everything from the basics of querydsl to practical use all at once!
Intermediate
Java, JPA
Experience the power of Type Safe SQL with jOOQ!
388 learners
Level Intermediate
Course period Unlimited


Reviews from Early Learners
5.0
이찬형
I was lucky to find this great lecture while looking for ways to reflect jOOQ in an environment using R2DBC. It was very helpful for understanding because there were a lot of great contents that covered the basic knowledge of jOOQ. I am still trying to set it up to suit the environment and looking for ways to write codes for R2DBC, but I am moving forward step by step more easily than I thought by supporting what I learned in the lecture. Thank you for creating such a great lecture.
5.0
김우재
My experience using Jooq at my previous company was very good. JPA is very convenient and powerful, but on the other hand, I was disappointed when I encountered functions that were not supported. In the case of Jooq, it was very good that it supported all SQL functions, and that it could be made type-safe through J classes. I was very disappointed that there was no reference, but I personally really like that you made such a detailed lecture.
5.0
멀머
When I first learned about QueryDSL in JPA, I thought it would be nice if general SQL was also supported as a DSL, and since jooq was the technology I wanted, I bought it and learned it right away. If you have some knowledge of SQL, the learning curve is lower than JPA, so you can understand it without difficulty. I recommend the lecture itself because it includes basic usage + tips the instructor got while using it.
You can learn jOOQ from the basics to practical use all at once.
You can write SQL only with Java code, no XML configuration, no strings.
All SQL functions that cannot be done with ORM can be used in Java code.
SQL is not inconvenient.
It's just that writing SQL as a string is inconvenient.
Mastering databases and SQL is essential for every backend developer. However, traditional string-based SQL writing is repetitive and error-prone.
jOOQ is a powerful tool that solves these problems, allowing you to write SQL in an intuitive way while ensuring type safety. This course will teach you step-by-step how to use jOOQ , from basic concepts to advanced applications. (jOOQ is pronounced "juke.")
This course covers only the open source version of jOOQ.
JPA doesn't solve everything.
To be truly skilled, you must understand and be able to use SQL.
Modern Java backends often use a combination of Spring Boot and JPA.
However, Hibernate , the implementation of JPA, only covers 95% of SQL.
For this reason, SQL is essential for developing stable services. jOOQ makes SQL type-safe and easy to use .

Gavin King, creator of Hibernate - "You don't have to Hibernate everything."

jOOQ's dialect-based SQL generation
jOOQ generates SQL from Java code (not JPQL).
Complex and dynamic queries can be easily resolved, and once written, code can be used on other databases without modification. Furthermore, programmatic SQL control provides various features, such as preventing update and delete statements without where conditions and detecting slow queries.
Instead of writing SQL in error-prone XML or strings, we write it in Java code. This eliminates human error at its source. We've all experienced server failures due to SQL typos, right?

Goodbye complex XML~
jOOQ goes beyond just creating SQL from Java code with SQL Builder. It also includes various features like ActiveRecord and Generated DAO to simplify SQL creation.

jOOQ's ActiveRecord pattern
Let's learn how jOOQ works in the Spring Framework environment, which is frequently used in the field.

jOOQ in a Spring Boot environment
Operating System and Version (OS): All OS are supported, including Windows, MacOS, and Linux.
Tools used: Intellij, Docker for Desktop,
Learning materials provided in PPT and GitHub source code formats
Amount and Capacity: Learning materials provided for each section
This course covers how to use jOOQ in a Spring Boot environment.
Since this course uses MySQL and Docker, some understanding of both is required.
This lecture frequently mentions adjacent technologies like MyBatis, JPA, and QueryDSL. While this won't interfere with your understanding, it may feel unfamiliar, so we appreciate your understanding.
Who is this course right for?
People who were worried about not being able to avoid native SQL while using JPA
For those who want to write SQL in a TypeSafe manner like QueryDSL
Anyone who wants to improve MyBatis' XML configuration and string-based query writing method
Need to know before starting?
Java
Spring Boot
Docker
RDBMS (MySQL)
Career Verified
388
Learners
24
Reviews
29
Answers
4.9
Rating
1
Course
Hello. I am Seol Dong-min, your knowledge sharer.
I am currently working as a backend developer at a major corporation, and I enjoy solving complex problems clearly.
As a non-major from the School of Business Administration, I have learned overall web technologies through the analysis of various open-source projects and multiple technical experiences.
My favorite subjects are OOP and SQL, two things that might seem like an unlikely pair.
Github: https://github.com/SightStudio LinkedIn: https://www.linkedin.com/in/dong-min-seol-243b6119a Experience 2021. 12 ~ 2025.11: Former) Kakao Backend Developer 2020.12 ~ 2021.12 : Former) ESTsoft
Github: https://github.com/SightStudio
LinkedIn: https://www.linkedin.com/in/dong-min-seol-243b6119a
Experience
2021. 12 ~ 2025.11: Former) Kakao Backend Developer
2020.12 ~ 2021.12 : Former) ESTsoft Backend Developer
Experience Dec 2021 – Nov 2025: Former Backend Developer at Kakao Dec 2020 – Dec 2021: Former Backend Developer at ESTsoft
All
30 lectures ∙ (4hr 53min)
Course Materials:
All
24 reviews
4.9
24 reviews
Reviews 5
∙
Average Rating 5.0
Reviews 1
∙
Average Rating 5.0
Reviews 7
∙
Average Rating 5.0
5
I was lucky to find this great lecture while looking for ways to reflect jOOQ in an environment using R2DBC. It was very helpful for understanding because there were a lot of great contents that covered the basic knowledge of jOOQ. I am still trying to set it up to suit the environment and looking for ways to write codes for R2DBC, but I am moving forward step by step more easily than I thought by supporting what I learned in the lecture. Thank you for creating such a great lecture.
Reviews 6
∙
Average Rating 5.0
5
My experience using Jooq at my previous company was very good. JPA is very convenient and powerful, but on the other hand, I was disappointed when I encountered functions that were not supported. In the case of Jooq, it was very good that it supported all SQL functions, and that it could be made type-safe through J classes. I was very disappointed that there was no reference, but I personally really like that you made such a detailed lecture.
Reviews 7
∙
Average Rating 4.9
5
I am a 6-year SI developer who mainly uses MyBatis when dealing with SQL. I studied JPA at first because I wanted to avoid the inevitable human errors that occur after using MyBatis for a long time. I felt the charm of JPA when managing tables with entities without directly writing DDL and when writing C, U, D. However, I was losing my motivation to learn due to the disadvantages of writing SELECT statements and the strangely unfamiliar JPQL (if you use it, you risk having to carry human errors as they are...) and then I found out about this lecture. (I also tried QueryDSL, but I wondered if it was okay because it had not been maintained for a long time... ㅠㅠ) The introduction was long when writing a jOOQ course review, but in conclusion, I really liked this course. As someone who likes writing SQL, I thought that JOOQ, which reduces human errors and creates queries in a similar way to SQL, was the perfect technology for me. Thank you for the great lecture.
Explore other courses in the same field!