inflearn logo
inflearn logo

[改訂版2023-11-27] Spring Boot 3.xを利用したRESTful Web Servicesの開発

このレッスンは、Spring Bootを使用してRESTful Web Servicesアプリケーションを開発するプロセスについて学ぶことで、REST APIの設計に必要な基本的な知識を学ぶことができます。

難易度 初級

受講期間 無制限

Spring Boot
Spring Boot
REST API
REST API
Spring Boot
Spring Boot
REST API
REST API

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

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

4.8

5.0

kang

91% 受講後に作成

Rest api基本入門でとても良いです。ありがとうございます。 ぴったりの講義でした。 SpringBoot2.2以上のときにSwaggerが追加された場合、HATEOS使用エラー発生します。私のようにシャベルする人がいるかと思います... NoUniqueBeanDefinitionException発生 解決:Swagger設定ファイルクラスに以下を追加。 @Primary @Bean public LinkDiscoverers discoverers() { List<LinkDiscoverer> plugins = new ArrayList<>(); plugins.add(new CollectionJsonLinkDiscoverer()); return new LinkDiscoverers(SimplePluginRegistry.create(plugins)); }

5.0

OMG

91% 受講後に作成

人講であるにもかかわらず、時間当たり1万ウォンを超えるインフラ内の講義が酷く負担も多くなる価格が多いのですが、そのような講義に比べてかなり安い価格にクオリティも高価な講義と比べても不足が全くない講義だと思います。 次の講義も楽しみにしています!

5.0

Olive

91% 受講後に作成

頑張りました。春の基礎知識だけがあれば、ブートREST API入門講義でとても良いようです!後続講座が出たらぜひ見に来ます

受講後に得られること

  • Spring Boot

  • REST API

  • RESTful services

  • JPA

  • OAS 3.0(Swagger Specification)

Spring Boot RESTful API入門のバイブル!

이도원 / Dowon Lee - Spring Boot (스프링부트) RESTful Web API

本講義は、Spring BootとSpring Cloudを利用したMicroserviceを開発する過程において、
RESTfulサービスを設計し、Spring Cloud APIを利用した実装及び運営について学習できるよう構成した講義です。


📝 講義紹介

# マイクロサービス(Microservices)とは何ですか?

「マイクロサービスは、ソフトウェア開発技術の一つで、サービス指向アーキテクチャ(SOA)構造スタイルの変種として、アプリケーションを疎結合なサービスの集合として構成する手法です。マイクロサービスアーキテクチャでは、サービスは細粒度で、プロトコルは軽量です。」- wikipedia

2011年にベニスでソフトウェアアーキテクチャワークショップが開催されて以降、マイクロサービスという用語を使用し始めました。アプリケーション構築において従来のモノリス開発方式の代わりにマイクロサービス開発方式を導入することで、開発だけでなく維持・保守においてもコスト削減と効率性の向上が実現され、顧客の要求事項も迅速に処理できるようになりました。このようなマイクロサービスの人気とともに、RESTfulという開発方式も多く使用されています。

Microservice Architectureとは、従来一つの大きな単位で開発・運用されていたアプリケーションを数十、数百、多い場合は数千個の小さなサービス単位に分割してアプリケーションを開発・運用する方式のことです。このようなMicroserviceを開発するためには、各サービス同士が独立して開発できる必要があり、各サービスに最適化された開発言語とデータベースを選択することもできるPolyglot Programming(ポリグロットプログラミング)の要件を備える必要があります。

このように異機種で開発されたアプリケーション間でのデータ通信のために、標準化されたHTTPプロトコルを使用するRESTfulサービスが広く使用されています。

Spring Bootは、独立して運用可能なSpringベースのアプリケーションを簡単に開発できるよう支援する開発ツールであり、Spring Projectです。Spring Bootを使用すると、すぐに実行可能な独立型Springアプリケーションを簡単に作成でき、Spring frameworkやその他のThird-partyライブラリに対する設定作業を最小化でき、ビジネスロジックにより多くの時間を投資できます。また、Spring BootのStarterコンポーネントを利用すれば、商用化に必要な統計、状態チェック、外部設定などに関する作業も簡単に構成できます。

私たちの最終目標はSpring BootSpring Cloudを利用して
マイクロサービスアーキテクチャで設計されたアプリケーションを
設計し、開発することです。


✏️ 授業過程

💡 本コースを通じてSpring BootとSpring Cloudを利用してMicroservice Architecureでウェブサービスを設計し、実装、運営に関する全般的なプロセスを学習することができます。(ロードマップを見る)

最初のコース(現在の講義)

REST APIを開発するためにSpring Bootでプロジェクトを生成する段階から、REST APIを設計してアプリケーションを実装する過程について学習します。

二番目のコース(続きの講義)

Spring BootとSpring Cloudを利用してMicroservice Architectureを設計、構築する方法について学習します。

📢 受講前にご確認ください

  • 講義で使用された開発ツールおよびライブラリは以下の通りです。
    • Java 17 + IntelliJ IDEA + Postman
    • Spring Boot 3.1.5(Spring Boot Security、Actuator、Starter、Spring Data JPA など)
    • OpenAPI Specification 3.0
    • Swagger UI 5.2.0
    • H2 2.1.214
  • 講義で使用された実習コードおよび教材(PDF)はGithubでご確認いただけます

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Spring Bootを使ってWebアプリケーションを開発したい人

  • REST APIアプリケーションを開発したい人

  • マイクロサービスを開発したい方

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

  • Java

  • Webアプリケーション

  • Spring frameworkの基本知識

こんにちは
Dowon Leeです。

30,257

受講生

1,679

受講レビュー

1,373

回答

4.8

講座評価

8

講座

私はITエンジニアです。いつか職業欄に「会社員?」「開発者?」「講師?」どの言葉を選ぶべきか悩んだ時期がありました。そんな中、ITエンジニアという表現が自分にしっくりくる職業名だと思い、今でも職業欄には「ITエンジニア」と書いています。

職業とは自分の仕事を表すものであり、仕事とは楽しくて、誰かの役に立つものであってほしいと考えています。誰もが望み通りに仕事をしながら生きていけるわけではありませんが、私は今自分がしているこの仕事が好きで、もっと上手くなりたいと思っている人間です。開発者として、講師として、コンサルタントとしての役割を果たしながら、次々と新しく登場し変化するIT新技術を追いかけるのに精一杯ではありますが、それでも他の誰よりも少しでも早く触れ、広め、活用したいと願う一人です。

最近関心を持っている分野はオンライン教育コンサルティングです。そして、興味のある技術は Cloud Native Architecture、Blockchain、Machine Learning、Kafka、Kubernetes などです。これらの技術は実際に講義も行っていますし、実務に適用して使用もしています。しかし、あまりにも膨大なテーマであるため、今でも継続して勉強しています。

頭の中にあるだけでは、真の知識とは言えません。私は自分が持つ知識と経験を、さまざまな方法を通じて共有しようと考えています。そして、新しい分野や新しい技術に挑戦し続けるITエンジニアであり続けます。

 

 

  • ) エンジェイワンカンパニー代表

  • ) 東国大学校 国際情報大学院 情報保護学科 客員教授

  • ) JP Morgan Chase AMJ Tech consultant (日本)

  • ) サムスンSDS CMS事業本部 責任エンジニア

 

 

もっと見る

カリキュラム

全体

52件 ∙ (6時間 57分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

466件

4.8

466件の受講レビュー

  • omg님의 프로필 이미지
    omg

    受講レビュー 206

    平均評価 5.0

    5

    91% 受講後に作成

    人講であるにもかかわらず、時間当たり1万ウォンを超えるインフラ内の講義が酷く負担も多くなる価格が多いのですが、そのような講義に比べてかなり安い価格にクオリティも高価な講義と比べても不足が全くない講義だと思います。 次の講義も楽しみにしています!

    • anjwoc님의 프로필 이미지
      anjwoc

      受講レビュー 5

      平均評価 5.0

      5

      60% 受講後に作成

      説明は、この汚れはありません本当にきれいで言葉が上手です! Javascript系のフレームワークだけを書いて急いで面接が取れてスプリングをすばやく見るのに役立ちましたㅎㅎ さらに講座を出したらまた見に来ます。説明がうまくいってお金が惜しくないと思います。

      • kenneth
        知識共有者

        こんにちは、離島院です。 次のレッスンはお知らせで、Spring Cloudの内容につながる予定です。早い時期に更新します。 ありがとうございます。

    • zerowest10016015님의 프로필 이미지
      zerowest10016015

      受講レビュー 3

      平均評価 5.0

      5

      91% 受講後に作成

      頑張りました。春の基礎知識だけがあれば、ブートREST API入門講義でとても良いようです!後続講座が出たらぜひ見に来ます

      • ppojin님의 프로필 이미지
        ppojin

        受講レビュー 1

        平均評価 5.0

        5

        100% 受講後に作成

        よく聞きました。これまでスプリングブートについてよく知らなかったのですが、このように多くの機能があり、それらの機能を一度に書いてみて、今スプリングブートが何であるか、どのように書くべきかについて少し知っているようです。

        • kang1161님의 프로필 이미지
          kang1161

          受講レビュー 1

          平均評価 5.0

          5

          91% 受講後に作成

          Rest api基本入門でとても良いです。ありがとうございます。 ぴったりの講義でした。 SpringBoot2.2以上のときにSwaggerが追加された場合、HATEOS使用エラー発生します。私のようにシャベルする人がいるかと思います... NoUniqueBeanDefinitionException発生 解決:Swagger設定ファイルクラスに以下を追加。 @Primary @Bean public LinkDiscoverers discoverers() { List<LinkDiscoverer> plugins = new ArrayList<>(); plugins.add(new CollectionJsonLinkDiscoverer()); return new LinkDiscoverers(SimplePluginRegistry.create(plugins)); }

          Dowon Leeの他の講座

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

          似ている講座

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

          ¥3,756