강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Database

JOOQ ngoài đời thực! Gõ SQL an toàn với Java

Trải nghiệm sức mạnh của Type Safe SQL thông qua jOOQ!

(4.9) 17 đánh giá

345 học viên

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

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Bạn có thể học jOOQ từ cơ bản đến sử dụng thực tế cùng một lúc.

  • SQL chỉ có thể được viết bằng mã Java mà không cần cài đặt hoặc chuỗi XML.

  • Tất cả các hàm SQL không thể thực hiện được bằng ORM đều có thể được sử dụng bằng mã Java.

SQL không hề bất tiện.

Chỉ là việc viết SQL dưới dạng chuỗi không tiện lợi.


Thực hành jOOQ! SQL an toàn với Java


Nắm vững cơ sở dữ liệu và SQL là điều cần thiết cho mọi lập trình viên backend. Tuy nhiên, việc viết SQL dựa trên chuỗi truyền thống thường lặp đi lặp lại và dễ xảy ra lỗi.

jOOQ là một công cụ mạnh mẽ giúp giải quyết những vấn đề này, cho phép bạn viết SQL một cách trực quan mà vẫn đảm bảo an toàn kiểu. Khóa học này sẽ hướng dẫn bạn từng bước cách sử dụng jOOQ , từ các khái niệm cơ bản đến các ứng dụng nâng cao. (jOOQ được phát âm là "juke.")


Khóa học này chỉ đề cập đến phiên bản mã nguồn mở của jOOQ.

1706621217839

2024.01 Hội nghị dành cho nhà phát triển lười biếng - jOOQ, Một cách khác để viết SQL Sự tham gia của diễn giả

JPA không giải quyết được mọi vấn đề.

Để thực sự có kỹ năng, bạn phải hiểu và có khả năng sử dụng SQL.

Các phần mềm Java hiện đại thường sử dụng kết hợp Spring Boot và JPA.
Tuy nhiên, Hibernate , phiên bản triển khai của JPA, chỉ bao phủ 95% SQL.

Vì lý do này, SQL rất cần thiết để phát triển các dịch vụ ổn định. jOOQ giúp SQL an toàn về kiểu và dễ sử dụng .

Gavin King, người sáng tạo ra Hibernate - "Bạn không cần phải Hibernate mọi thứ."

Viết SQL bằng mã Java, không phải chuỗi

Tạo SQL dựa trên phương ngữ của jOOQ

jOOQ tạo SQL từ mã Java (không phải JPQL).

Các truy vấn phức tạp và động có thể được giải quyết dễ dàng, và sau khi viết xong, mã có thể được sử dụng trên các cơ sở dữ liệu khác mà không cần sửa đổi. Hơn nữa, điều khiển SQL theo chương trình cung cấp nhiều tính năng khác nhau, chẳng hạn như ngăn chặn các câu lệnh cập nhật và xóa mà không có điều kiện where và phát hiện các truy vấn chậm.

Tìm hiểu về những điều này

1⃣ Viết SQL chỉ sử dụng Java, không sử dụng XML hoặc chuỗi

Thay vì viết SQL bằng XML hoặc chuỗi dễ bị lỗi, chúng tôi viết nó bằng mã Java. Điều này loại bỏ lỗi của con người ngay từ đầu. Ai trong chúng ta cũng từng gặp sự cố máy chủ do lỗi đánh máy SQL, đúng không?

Tạm biệt XML phức tạp~

2⃣ SQL Builder và nhiều tính năng tiện lợi hơn

jOOQ không chỉ đơn thuần là tạo SQL từ mã Java với SQL Builder. Nó còn bao gồm nhiều tính năng khác nhau như ActiveRecord và Generated DAO để đơn giản hóa việc tạo SQL.

Mẫu ActiveRecord của jOOQ

3⃣ Sử dụng jOOQ trong môi trường Spring Boot

Chúng ta hãy cùng tìm hiểu cách jOOQ hoạt động trong môi trường Spring Framework, một môi trường thường được sử dụng trong thực tế.

jOOQ trong môi trường Spring Boot

Những điều cần lưu ý trước khi tham gia khóa học

Môi trường thực hành

  • Hệ điều hành và Phiên bản (OS): Hỗ trợ tất cả các hệ điều hành, bao gồm Windows, MacOS và Linux.

  • Các công cụ được sử dụng: Intellij, Docker for Desktop,


Tài liệu học tập

  • Tài liệu học tập được cung cấp ở định dạng PPT và mã nguồn GitHub

  • Số lượng và dung lượng: Tài liệu học tập được cung cấp cho từng phần

Kiến thức và biện pháp phòng ngừa của người chơi

  • Khóa học này hướng dẫn cách sử dụng jOOQ trong môi trường Spring Boot.

  • Vì khóa học này sử dụng MySQL và Docker nên bạn cần có hiểu biết nhất định về cả hai.


  • Bài giảng này thường đề cập đến các công nghệ liên quan như MyBatis, JPA và QueryDSL. Mặc dù điều này sẽ không ảnh hưởng đến sự hiểu biết của bạn, nhưng bạn có thể cảm thấy chưa quen, vì vậy chúng tôi rất mong nhận được sự thông cảm của bạn.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Những người lo lắng về việc không thể tránh được SQL gốc khi sử dụng JPA

  • Những người muốn viết SQL TypeSafe như QueryDSL

  • Bất kỳ ai muốn cải thiện cài đặt XML và phương pháp viết truy vấn dựa trên chuỗi của MyBatis

Cần biết trước khi bắt đầu?

  • Java

  • Khởi động mùa xuân

  • Docker

  • RDBMS (MySQL)

Xin chào
Đây là

345

Học viên

17

Đánh giá

28

Trả lời

4.9

Xếp hạng

1

Khóa học

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

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

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

Github: https://github.com/SightStudio


이력

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

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

 

Chương trình giảng dạy

Tất cả

30 bài giảng ∙ (4giờ 53phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

17 đánh giá

4.9

17 đánh giá

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

    Đánh giá 6

    Đánh giá trung bình 5.0

    5

    10% đã tham gia

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

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

      Đánh giá 7

      Đánh giá trung bình 4.9

      5

      90% đã tham gia

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

      • cykkkk님의 프로필 이미지
        cykkkk

        Đánh giá 5

        Đánh giá trung bình 5.0

        5

        100% đã tham gia

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

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

          Đánh giá 1

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

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

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

            Đánh giá 7

            Đánh giá trung bình 5.0

            5

            100% đã tham gia

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

            1.165.874 ₫

            Khóa học tương tự

            Khám phá các khóa học khác trong cùng lĩnh vực!