강의

멘토링

로드맵

BEST
Programming

/

Back-end

本当! Spring BootとJPAの活用2 - API開発とパフォーマンスの最適化

Spring BootとJPAを活用してAPIを開発します。そして、JPAは極端なパフォーマンスを最適化する方法を学ぶことができます。

  • yh
Java
Spring
Spring Boot
JPA

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

こんなことが学べます

  • Spring BootとJPAを活用してAPIを開発する正しい方法を理解します。

  • Spring BootとJPAを活用してAPIルックアップパフォーマンスをチューニングする方法を理解します。

  • Spring BootとJPAを活用して、実用的なパフォーマンスを最適化する方法を理解します。

スプリングブート、実務でうまく使いたいなら?
複雑な問題まで解決する力を育ててみてください。

🚩この講義はロードマップコースです。

  • 本講義はJavaバックエンド開発の実践コースの2番目の講義です。スプリングブートとJPA実務完全征服ロードマップをまず確認してください。 (リンク)

本当! Spring BootとJPAの活用2 - API開発とパフォーマンスの最適化

Java Jin Youngでは、Spring BootとJPAを活用してWebアプリケーションを開発することが世界的な傾向です。そのため、多くの開発者がこれら2つの技術を学習して使用しています。しかし、実務の多様で複雑な状況にパフォーマンスまで考慮しながら、これらの技術を再び活用することは考えほど簡単ではありません。

実務では、機能を開発するために必要な手順を超えて技術的な問題を解決できる必要があります。複雑で、データも多くの状況でパフォーマンスを最適化し、同時にメンテナンスしやすいアプリケーションを開発する必要があります。


講義目標

1編ではWebアプリケーションを開発しながら機能の実装に焦点を当てたら、 2編は機能開発を超えて技術問題を解決することに焦点を当てました。きちんと実装する方法は何か、実務で主にどんな性能問題があり、どのように解決すべきか、技術問題を解決するのに役立ちます。

APIを正しく実装

APIを1つ開発してもJPAを使用すると、エンティティという概念が入りながら悩む距離が多くなります。エンティティをAPIに直接公開する必要がありますか?それとも別のオブジェクトを別々に作成して返す必要がありますか?エンティティを返すと、遅延ローディングはどのように処理する必要がありますか?など数多くの悩みをすることになります。実務でどのように実装するのが安全で、メンテナンスが良い方法なのか本番のノウハウをお知らせします。

 JPA 極限の照会パフォーマンスの最適化について

実務では、複数のテーブルを結合し、データをすばやく照会する必要がある複雑な状況が頻繁に発生します。ところでここに一対多関係のコレクションデータも一緒に照会し、さらにページングまで処理しなければならない場合があります。これは問題が非常に複雑になり、単にテーブルの結合だけでは問題を解決するのが困難です。このような複雑なルックアップパフォーマンスの問題をJPAでどのように最適化するか、そして限界はどこまでであるのか本番のノウハウをお知らせします。

 複雑な例をコーディングで6段階に分けてパフォーマンスチューニング

パフォーマンスが出ないAPIを直接開発し、なぜパフォーマンスが出ないのかを分析し、 6段階に分けて段階的に直接コーディングしながらチューニングできるように準備しました。こういったことに従うと、当然のことながら、実務の複雑なパフォーマンス問題にどのように対処すべきかがわかります。

 ワーキングJPAパフォーマンス問題の90%を解決

今回の講義では、実務JPAのパフォーマンス問題の90%を解決できるように、実務で本当に頻繁に発生するさまざまなパフォーマンス問題が含まれています。スプリングブートとJPAで進行する実務プロジェクトを見ると、機能の実装はうまくいきますが、プロジェクトの最後にパフォーマンスが出なくなって苦労する開発者の方々を本当にたくさん見ました。それで、助けに行ってみると、JPAのパフォーマンス最適化をどうすべきかわからない方が多かったです。

数日の夜を刻みながら何とか解決しようとする方から、方法がわからないので、JPAの代わりにSQLを直接汗で汗で書いて、数多くのコードをSQLに変更する方まで、本当に様々な状況を見ました。ところがいざ助けに行って実際の性能がよく出るようにチューニングするのには5分かかりませんでした。 JPAクエリオプションを調整して、少しのコードだけを修正しましたが、数日苦労しても1時間ずつかかったクエリが数十秒に減るのを見た開発者の方の表情がまだ生き生きしています。 JPAは、それ自体でさまざまなパフォーマンスチューニングオプションを提供しています。したがって、いくつかのオプションとコードを修正するだけで、さまざまなパフォーマンスの最適化を試すことができます。

このレッスンで説明されている内容を理解すると、90%の実務パフォーマンスの問題を解決できます。


主な目次

最近では、ビューテンプレートを使用して直接サーバーからHTMLを作成して応答するのではなく、APIにJSONデータを投稿して返すことがよくあります。 Spring BootとJPAを使用してAPIを開発する際の注意点と正しい設計方向を理解し、パフォーマンスまで考慮してAPIを完成することが今回の目標です。

パート2は、パート1で作成したドメインに基づいてREST APIを開発します。そして、段階的にルックアップ用APIのパフォーマンスを最適化します。このプロセスを通じて、実務で必要なJPAの照会クエリのチューニングに関連する部分を素早く解放します。

  • API開発の基本:基本的な登録、変更、照会用のREST APIを開発します。
  • API開発の高度化:実務からJPAとして照会用APIを開発するときは、注意点と正しい設計方向をお知らせします。 JPA遅延ローディングの問題を解決し、段階的にさまざまなパフォーマンス最適化方法を説明します。
  • 実務必須の最適化: Spring BootとJPAを使用するときに慎重に使用しないと、実務が障害につながる可能性があるOSIVの内容がカバーされます。

学習方法

この講義はほとんど練習で行われています。そのため、最初から最後まで、自分が直接コーディングしながら講義に従わなければならない最も多くのものを得ることができます。

ちなみにこの講義はSpring BootとJPAをある程度知り、簡単なWebアプリケーション程度は開発できる方が対象です。これらの人々が機能の実装を超えて技術的に深い理解をするのを助けることが目標です。したがって、Spring BootとJPAの理解が不足している場合は、最初のレッスンを最初に聞くことをお勧めします。

💻選手講義を確認してください!

  • 第1章で設計したドメインモデルに基づいてAPIを開発し、さまざまなパフォーマンス最適化手法を紹介します。そのため、1編の講義を聞き、2編の講義を聞くことをお勧めします。

関連講義

基本編

Java ORM標準JPAプログラミング - 基本編
JPAベースの技術を理解するために必要な選手講義です。

活用編

本当! Spring BootとJPAの活用1 - Webアプリケーション開発
Spring BootとJPAで実際のWebアプリケーションを設計および開発します。

本当! Spring Data JPA
基礎から実務までスプリングJPAを学びます。

本当! Querydsl
Querydslを介して複雑なクエリと動的クエリの問題を解決します。

参考書

本はより深い内容を勉強したい人のために
参考書と考えてください。
(本がなくても講義のための別途資料が提供されます。)


こんな方に
おすすめです

学習対象は
誰でしょう?

  • 実務ではSpring BootとJPAを使用していますが、そのスキルをよりよく活用したい方

  • Spring BootとJPAは知っていますが、正しいAPIの開発方法を理解したい人

  • Spring BootとJPAは知っていますが、実務に必要なパフォーマンス最適化技術を理解したい人

  • スプリングブートとJPAは分かるが、実務で必ず知るべき深い内容を理解したい方

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

  • JAVA言語

  • スプリングフレームワーク

  • リレーショナルデータベースの基礎知識

  • JPA

こんにちは
です。

558,936

受講生

36,632

受講レビュー

8,965

回答

5.0

講座評価

25

講座

진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.

 

저의 개발 인생 이야기

EO 인터뷰 영상

개발바닥 - 시골 청년 개발왕 되다

취업과 이직에 대한 고민 해결

 

カリキュラム

全体

24件 ∙ (6時間 35分)

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

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

受講レビュー

全体

1,277件

5.0

1,277件の受講レビュー

  • ckdals123456782875님의 프로필 이미지
    ckdals123456782875

    受講レビュー 2

    平均評価 5.0

    5

    67% 受講後に作成

    大変だ。ますます若いイ・ヒョンがハンサムに見え始める。これは愛ですか?

    • yh
      知識共有者

      ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ大好きですㅎㅎ

  • kingbbode0570님의 프로필 이미지
    kingbbode0570

    受講レビュー 3

    平均評価 5.0

    5

    79% 受講後に作成

    全部教えてくれたらどうしますかチーム長! 実務で多くの役に立ったノウハウがいっぱいの講義です。 良い講義を作ってくれてありがとう:)

    • yh
      知識共有者

      ㅎㅎㅎkingbbodeはいつも最高に感謝します!

  • wnstn0154님의 프로필 이미지
    wnstn0154

    受講レビュー 6

    平均評価 5.0

    5

    100% 受講後に作成

    SpringとJPAを一緒に勉強する学生が上げた数多くのQ&Aのおかげで講義をより疑問が生じる部分があればQ&Aを参考にすれば9割は解決される。これはキングヨンファン様が抄紙一貫Q&Aに気を使ってくださったから…決済して聞くだけでも私がむしろお金を稼いでいく講義。

    • yh
      知識共有者

      タララ様一生懸命にやってくれるので、それだけもっと手に入れてくれるのだと思います^^ ありがとうございます。

  • khjvvv70387님의 프로필 이미지
    khjvvv70387

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    JPA基本編と活用1、2編まで頑張りました。 倍速再生をしなければ、聞きづらいほど退屈な講義が多かったのですが、ヨンハン様講義は倍速再生をすることができませんでした。それだけ内容が充実しており、講義テンションも良くて集中してすべての講義を聞くことができました。良い講義ありがとうございます〜!〜!

    • yh
      知識共有者

      大きい!ありがとうございます。庭園。実は私もテンションが大事だと思って、テンションが死んだらまた撮りますww

  • deeplyrooted님의 프로필 이미지
    deeplyrooted

    受講レビュー 5

    平均評価 5.0

    5

    100% 受講後に作成

    * best practiceを教えてくれますが、bad practiceも一緒に説明してくれたので、改善されたものがなぜbest practiceになるのかがわかりました。 *開発便宜、性能、メンテナンスなどのトレードオフについて詳しく説明します。まだ多くのトラフィックを経験したことはありませんが、サービスが増えてトラフィックが増えたとき、バックエンド開発者はパフォーマンスを向上させるためにどの点を考慮する必要があるのか​​を知ることができました。 *パフォーマンス改善のために作業したときにSQLクエリを一つずつ見せながら、どのようにパフォーマンス最適化になるのか、常にこのようなパフォーマンス最適化が銀弾ではないことも一緒に教えてくれます。 Spring Data JPA、QueryDSLの説明を聞いてみると、DBとJPAの基本をさらにしっかり固めたいと思います。 実務での経験を素敵な講義で解いてくれてありがとう:)

    • yh
      知識共有者

      講義を本当にしっかり習得しましたね^^!

期間限定セール

¥7,837

24%

¥10,338

yhの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

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