강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

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

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

  • Dowon Lee
Spring Boot
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の基本知識

こんにちは
です。

29,875

受講生

1,635

受講レビュー

1,369

回答

4.8

講座評価

8

講座

저는 IT 엔지니어입니다. 언젠가 직업란에 "회사원?", "개발자?", "강사?" 어떤 단어를 선택해야 할 지 고민이 되었던 때가 있었습니다. 그러다가, IT 엔지니어라는 표현이 제가 잘 어울리는 직업명이라는 생각이 들어 지금까지도 직업란에는 "IT 엔지니어"라고 적고 있습니다.

직업이라는 것은 자신의 일을 나타내는 것이고, 일이라는 것은 재미있고, 도움이 되는 일이면 좋겠다는 생각을 가지고 있습니다. 누구나 다 원하는대로 일을 하며 살수는 없지만, 저는 제가 하는 있는 이 일을 좋아하는 있고, 잘하고 싶어하는 사람입니다. 개발자로써, 강사로써, 컨설턴트로써의 역할을 해 오면서, 매번 새롭게 출시되고 변화하는 IT 신기술을 따라가기에 급급하지만, 그래도, 남들보다 조금이라도 먼저 접하고, 전파하고, 사용하고 싶은 사람 중 한명입니다. 

최근 관심을 가지고 있는 분야는 온라인 교육 컨설팅입니다. 그리고 관심있는 기술은 Cloud Native Architecture, Blockchain, Machine Learning, Kafka, Kuberbetes 등입니다. 이러한 기술은 실제로 강의도 하고 있고 업무에 적용해서 사용도 하고 있습니다. 하지만, 워낙 방대한 주제이다 보니, 아직까지도 계속 공부하고 있습니다.

머리속에 가지고 있는 것은 진정한 지식이 아니라고 합니다. 저는 제가 가진 지식과 경험을 다양한 방벙을 통해 공유하려 합니다. 그리고, 새로운 분야, 새로운 기술에 계속 도전하고 있는 IT 엔지니어가 될 것입니다.  

 

 

  • ) 엔제이원컴퍼니 대표 

  • ) 동국대학교 국제정보대학원 정보보호학과 대우교수

  • ) JP Morgan Chase AMJ Tech consultant (일본)

  • ) 삼성 SDS CMS 사업본부 책임 엔지니어

 

 

カリキュラム

全体

52件 ∙ (6時間 57分)

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

受講レビュー

全体

459件

4.8

459件の受講レビュー

  • kang1161님의 프로필 이미지
    kang1161

    受講レビュー 1

    平均評価 5.0

    5

    91% 受講後に作成

    It's very good for basic introduction to Rest API. Thank you. It was exactly the lecture I wanted. When Swagger is added in SpringBoot2.2 or higher, a HATEOS usage error occurs. I wonder if there are people who struggle like me... NoUniqueBeanDefinitionException occurs Solution: Add the following to the Swagger configuration file class. @Primary @Bean public LinkDiscoverers discoverers() { List<LinkDiscoverer> plugins = new ArrayList<>(); plugins.add(new CollectionJsonLinkDiscoverer()); return new LinkDiscoverers(SimplePluginRegistry.create(plugins)); }

    • omg님의 프로필 이미지
      omg

      受講レビュー 205

      平均評価 5.0

      5

      91% 受講後に作成

      There are many lectures within Infraon that cost more than 10,000 won per hour, and many of them are very expensive, but compared to those lectures, I think this lecture is quite cheap and its quality is not lacking at all compared to expensive lectures. I look forward to the next lecture! Thank you for the great lecture :)

      • rlaxowns20068222님의 프로필 이미지
        rlaxowns20068222

        受講レビュー 1

        平均評価 3.0

        3

        89% 受講後に作成

        Content: Top Preparation: Top It seems like you prepared a lot to the point where there is no stuttering at all. It is a very good lecture. Biggest drawback: The sound is so, so, so, so, so small that I wonder how someone with a good voice recorded it. It is so small that it is stressful. Please pay attention to it from the next lecture. ---After the lecture--- I listened really, really, really well. You have a teaching ability that is comparable to other lectures. I quickly ran it twice and organized it on Git. I learned a lot without even knowing it. Since there are no consecutive lectures, I will go listen to other lectures. I will buy it and listen to it again when the lecture opens in the future. I am worried about being compared to instructor DAWON when I go to other lectures.ㅎㅎ Anyway, I will listen well. ps. Please set the sound so that it can be heard well even at volume 30! I set the sound to 100 for the lecture and listen, and then my ears will burst when other alarms go offㅜㅜ.

        • kenneth
          知識共有者

          Hello, this is Lee Do-won. After recording the lecture, I discussed it with the manager in charge of Inflearn. Since there was no designation for classes with medium or higher volumes during testing on Windows and Mac environments, I released the lecture as is. I apologize for the inconvenience, and I will pay attention when releasing lectures in the future. Thank you.

      • zerowest10016015님의 프로필 이미지
        zerowest10016015

        受講レビュー 3

        平均評価 5.0

        5

        91% 受講後に作成

        It was solid. If you only have basic knowledge of Spring, it seems like a great introductory course to Boot REST API!! I will definitely come and watch the follow-up course.

        • ppojin님의 프로필 이미지
          ppojin

          受講レビュー 1

          平均評価 5.0

          5

          100% 受講後に作成

          I heard it well. I didn't know much about Spring Boot until now, but it has so many functions, and after using them one by one, I think I now know a little bit about what Spring Boot is and how to use it.

          ¥3,706

          Dowon Leeの他の講座

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

          似ている講座

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