강의

멘토링

커뮤니티

BEST
Programming

/

Database

本当のjOOQ! Type Safe SQL with Java

jOOQでType SafeしたSQLの強力さを体験してください!

  • sdm32851630
실습 중심
db설계
쿼리
Java
jooq
SQL
Spring Boot
dsl

学習した受講者のレビュー

受講後に得られること

  • jOOQの基礎から実務活用まで一度に学ぶことができます。

  • XML設定、文字列のないJavaコードでのみSQLを作成できます。

  • ORMではできないSQL機能をすべてJavaコードとして使用できます。

SQLは不便ではありません。

SQLを文字列で書く方法は不便です。


本当のjOOQ! Type Safe SQL with Java


データベースとSQLをうまく扱うことは、すべてのバックエンド開発者にとって不可欠な技術です。しかし、伝統的な文字列ベースのSQLを書く方法は反復的でエラーが発生しやすいです。

jOOQはこれらの問題を解決する強力なツールで、タイプセーフティを保証しながらも直感的な方法でSQLを作成できるようにします。このレッスンでは、 jOOQの基本概念から深刻な活用方法まで段階的に学習できます。 (jOOQはジュークと読みます。)


このレッスンはjOOQオープンソースバージョンについてのみ説明します。

1706621217839

2024.01 怠惰な開発者カンファレンス - jOOQ、SQLを書く別の方法スピーカー参加

JPAはすべてを解決しません。

真のスキルを得るには、SQLを理解して使用することを知っておく必要があります。

最新のJavaバックエンドは、主にSpring BootとJPAを組み合わせて使用しています。
しかし、JPAの実装であるHibernateはSQLの95%しかカバーしていません。

このため、安定したサービスを開発するためにはSQLが必須です。 jOOQSQL を型セーフで使いやすくします。

Hibernateの創設者Gavin King - 「すべてをHibernateで処理する必要はありません」

文字列ではなくJavaコードでSQLを書く

jOOQのdialectベースのSQL生成

jOOQはJavaコードでSQLを作成します。 (JPQLではありません)

複雑なクエリと動的クエリを簡単に解放することができ、一度作成したコードはコードを変更せずに他のデータベースで使用できます。また、SQLをプログラマティックに制御することで、where条件なしのupdate&delete文の実行防止、スロークエリの検出など、さまざまな機能を提供できます。

このようなことを学びます。

1⃣XMLと文字列なしでJavaでSQLを作成する

人が間違えやすいXMLや、文字列の代わりにJavaコードでSQLを作成します。故にヒューマンエラーを源泉的に遮断できます。誰もがSQLエラーのために運用サーバーに障害が発生したことがありますか?

複雑なXMLはこんにちは〜

2⃣ SQL Builder、それ以上の様々な便利機能

jOOQには、JavaコードでSQLを作成するSQL Builder以上の機能があります。 ActiveRecord、Generated Daoなど、さまざまな機能を使用してSQLを簡単に作成できます。

jOOQのActiveRecordパターン

3⃣ Spring Boot環境でのjOOQの使い方

ビジネスでよく使用されるSpring Framework環境でjOOQがどのように動作するかを確認します。

Spring Boot環境でのjOOQ

受講前の注意

練習環境

  • オペレーティングシステムとバージョン(OS):Windows、MacOS、LinuxなどのすべてのOSが利用可能です。

  • 使用ツール: Intellij, Docker for Desktop,


学習資料

  • 提供する学習資料の種類:PPT、FitHubのソースコード

  • 分量と容量:各セクションで学習資料を提供する

選手の知識と注意事項

  • このレッスンでは、Spring Boot環境でjOOQを使用する方法について説明します。

  • このレッスンではMySQLとDockerを使用しているため、この2つの理解がある程度必要です。


  • 本講義では、隣接技術であるMyBatis、JPA、QueryDSLがしばしば挙げられます。講義の理解を妨げるほどではありませんが、見慣れないように感じられますので、この部分ご了承ください。


こんな方に
おすすめです

学習対象は
誰でしょう?

  • JPAを使ってネイティブSQLを避けられなくて悩んだ方

  • QueryDSLのようにTypeSafeにSQLを作成したい方

  • MyBatisのXML設定と、文字列ベースのクエリ作成方法を改善したい方

前提知識、
必要でしょうか?

  • Java

  • Spring Boot

  • Docker

  • RDBMS(MySQL)

こんにちは
です。

369

受講生

19

受講レビュー

29

回答

4.9

講座評価

1

講座

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

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

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

 

Github: https://github.com/SightStudio

LinkedIn: https://www.linkedin.com/in/dong-min-seol-243b6119a


이력

  • 2021. 12 ~ 2025.11: 전) 카카오 백엔드 개발

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

 

カリキュラム

全体

30件 ∙ (4時間 53分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

19件

4.9

19件の受講レビュー

  • 김우재님의 프로필 이미지
    김우재

    受講レビュー 6

    平均評価 5.0

    5

    10% 受講後に作成

    이전 회사에서 Jooq 를 사용했을 때의 경험은 매우 좋았습니다. JPA 는 매우 편리하고 강력하지만, 한편으로 지원하지 않는 기능들을 마주했을 때는 아쉬웠습니다. Jooq 의 경우 SQL 기능을 전부 지원하고 J클래스를 통해서 타입 세이프하게 만들 수 있다는 점이 매우 좋았습니다. 레퍼런스가 없어서 많이 아쉬웠는데 이렇게 세심하게 강의 만들어주셔서 개인적으로 너무 좋네요

    • 창랑님의 프로필 이미지
      창랑

      受講レビュー 7

      平均評価 4.9

      5

      90% 受講後に作成

      SQL를 다룰 때 MyBatis를 주력으로 사용하는 6년차 SI 개발자입니다. MyBatis를 오랫동안 사용하다 보니 필연적으로 발생하는 휴먼에러를 탈피해보고 싶어서, 처음에는 JPA 를 공부했었는데 DDL 을 직접 작성하지 않고 엔티티로 테이블을 관리하는 방식과 C,U,D 를 작성할 때는 JPA 의 멋짐을 느끼다가.. SELECT 문 작성할 때에 불리한 점과 묘하게 정이 안가는 JPQL(이거 쓰면 휴먼에러는 그대로 안고 가야하는 위험도...)떄문에 학습의욕이 조금 떨어지고 있는 와중에 이 강의를 알게 되었습니다. (QueryDSL도 찍먹해봤는데 오랫동안 관리안되고 있는거보고 이거 괜찮나... 싶었습니다 ㅠㅠ) jOOQ 수강평 작성하는데 서론이 길었습니다만, 결론적으로 이 강의는 아주 마음에 드는 강의였습니다. SQL작성을 좋아하는 저에게 휴먼에러는 줄이고 SQL과 유사한 방식으로 쿼리를 만들어주는 JOOQ는 저에게 딱 알맞은 기술이라고 생각했습니다. 좋은 강의 감사합니다.

      • cykkkk님의 프로필 이미지
        cykkkk

        受講レビュー 5

        平均評価 5.0

        5

        100% 受講後に作成

        잘 모르는 기술이었는데 생각보다 도입 고려를 해볼만한 기술 스택인거 같아서 놀랐고, 라이센스나 queryDsl, JPA 와도 비교해주는 부분이 있어서 개인적으로 재밌게 들었습니다.

        • 버터플라잉교육용님의 프로필 이미지
          버터플라잉교육용

          受講レビュー 1

          平均評価 5.0

          5

          100% 受講後に作成

          정말 좋은 강의입니다. jooq가 신기술인줄 알았는데 10년이 넘었군요. 이런 좋은 기술이 묻힐 뻔 했는데 한국에 소개해주셔서 감사합니다. 그 외 기타 기능들 너무 좋아요.

          • 이찬형님의 프로필 이미지
            이찬형

            受講レビュー 7

            平均評価 5.0

            5

            100% 受講後に作成

            R2DBC 사용하는 환경에서 jOOQ을 반영해보기 위해서 찾아보다가 이런 좋은 강의를 찾게 되어서 행운이었습니다. jOOQ에 대한 기초 지식을 다루기에 매우 좋은 내용들이 많아서 이해하는데 큰 도움을 받아서, 아직은 환경에 맞게 설정을 이것저것 만져보고, R2DBC에 맞게 코드를 작성하는 방법도 찾아보고 있지만, 강의에서 배운 내용을 뒷받침해서 생각보다 수월하게 한 계단씩 나아가고 있습니다. 이런 좋은 강의를 만들어주셔서 감사합니다.

            ¥6,861

            似ている講座

            同じ分野の他の講座を見てみましょう!