Inflearn English brand logo
Inflearn English brand logo
BEST

jOOQ in action! Type Safe SQL with Java

Experience the power of Type Safe SQL with jOOQ!

(4.9) 15 reviews

328 students

Java
jooq
SQL
Spring Boot
dsl

This course is prepared for Intermediate Learners.

What you will learn!

  • 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 inconvenient to write SQL as a string.


jOOQ in action! Type Safe SQL with Java


Being good at databases and SQL is a must-have skill for any backend developer. However, writing SQL in a traditional string-based manner 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. In this course, you can learn jOOQ step by step, from the basic concepts to advanced usage. (jOOQ is pronounced as juke.)


This course covers only the open source version of jOOQ.

1706621217839

2024.01 Lazy Developer Conference - jOOQ, Another Way to Write SQL Speakers

JPA doesn't solve everything.

To be truly competent, 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, covers only 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."

Writing SQL in Java code, not strings

jOOQ's dialect-based SQL generation

jOOQ generates SQL from Java code (not JPQL).

It can solve complex and dynamic queries simply, and once written, the code can be used in other databases without code modification. It can also provide various functions such as preventing update & delete statements without where conditions and detecting slow queries by programmatically controlling SQL.

Learn about these things

1⃣ Write SQL using only Java, without XML and strings

Instead of writing SQL in XML or strings, which are prone to human error, you write SQL in Java code. Therefore, you can block human error at the source. We've all had an experience where an operating server crashed due to a SQL typo, right?

Goodbye to complex XML~

2⃣ SQL Builder and more convenient features

jOOQ is more than just a SQL Builder that creates SQL with Java code. It allows you to easily write SQL through various features such as ActiveRecord, Generated Dao, etc.

ActiveRecord pattern in jOOQ

3⃣ Using jOOQ in a Spring Boot Environment

Let's learn how jOOQ works in a Spring Framework environment that is frequently used in the field.

jOOQ in a Spring Boot environment

Things to note before taking the class

Practice environment

  • Operating System and Version (OS): All OS are supported, including Windows, MacOS, and Linux.

  • Tools used: Intellij, Docker for Desktop,


Learning Materials

  • Learning material formats provided: PPT, GitHub source code

  • Volume and Capacity: Learning materials provided for each section

Player Knowledge and Notes

  • This tutorial covers how to use jOOQ in a Spring Boot environment.

  • Since this course uses MySQL and Docker, some understanding of both is required.


  • In this lecture, adjacent technologies such as MyBatis, JPA, and QueryDSL are often mentioned. Although it does not interfere with the understanding of the lecture, it may feel unfamiliar, so please understand.


Recommended for
these people!

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)

Hello
This is sdm32851630

328

Students

15

Reviews

26

Answers

4.9

Rating

1

Course

안녕하세요. 지식공유자 설동민입니다.

현재 카카오 백엔드 개발자로 근무하고 있으며, 복잡한 문제를 명쾌하게 풀어내는걸 좋아합니다.

경영학부 비전공자 출신으로, 다양한 OpenSource들에 대한 분석과 여러 기술적인 경험들을 통해
웹의 전반적인 기술을 학습하였습니다. OOP와 SQL, 이 어울리지 않는 두가지를 제일 좋아합니다.

Github: https://github.com/SightStudio


이력

  • 2021. 12 ~ 현재 : 카카오 백엔드 개발

  • 2020.12 ~ 2021.12: 전) 이스트소프트 백엔드 개발

 

More

Curriculum

All

30 lectures ∙ (4hr 53min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

15 reviews

4.9

15 reviews

  • choiyoungkwon님의 프로필 이미지
    choiyoungkwon

    Reviews 5

    Average Rating 5.0

    5

    100% enrolled

    I was surprised that it seemed to be a technology stack worth considering introducing, even though it was a technology I was not familiar with. I also found it personally interesting because it compared it to licenses, queryDsl, and JPA.

    • harpuria870722님의 프로필 이미지
      harpuria870722

      Reviews 7

      Average Rating 4.9

      5

      90% enrolled

      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.

      • kwj1270님의 프로필 이미지
        kwj1270

        Reviews 6

        Average Rating 5.0

        5

        10% enrolled

        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.

        • tussle님의 프로필 이미지
          tussle

          Reviews 7

          Average Rating 5.0

          5

          100% enrolled

          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.

          • inkang05084175님의 프로필 이미지
            inkang05084175

            Reviews 1

            Average Rating 5.0

            5

            100% enrolled

            This is a really good lecture. I thought jooq was a new technology, but it's been over 10 years. This great technology almost got buried, so thank you for introducing it to Korea. The other features are also really good.

            Similar courses

            Explore other courses in the same field!

            $42.90