Spring Boot API連携

Spring BootのRest APIサービスでURL情報を追加するHATEOASを利用してみた

HATEOASを利用すると、RestAPIサービスにおいて、例えば、データ追加後に、追加したデータを取得するURL情報も合わせて返却することができる。

HATEOASについては、以下のサイトを参照のこと。
https://blog.tagbangers.co.jp/2019/04/05/HATEOAS

今回は、STS(Spring Tool Suite)を利用したSpring Bootアプリケーション上で、HATEOASを利用して、データ追加後に、追加したデータを取得するURL情報も合わせて返却してみたので、そのサンプルプログラムを共有する。

前提条件

下記記事の実装がそれぞれ完了していること。

Spring BootのRest APIサービスにチェック処理を追加してみた特定のテーブルのデータ取得・追加・更新・削除を行うRest APIサービスでは、データ追加・更新する際は、@RequestBodyアノテ...
Spring Bootでチェック処理を追加したRest APIサービスを呼び出してみたチェック処理を追加したRest APIサービスは、Spring Bootを利用したアプリケーションで呼び出し、エラー時のレスポンスを取得...

作成したサンプルプログラム(APIサービス)の内容

作成したサンプルプログラム(APIサービス)の構成は以下の通り。
サンプルプログラムの構成(APIサービス)
なお、上記の赤枠は、前提条件のプログラムから変更したプログラムである。

pom.xmlの内容は以下の通りで、URL情報を追加するHATEOASのライブラリを追加している。

また、Restコントローラクラスの内容は以下の通りで、ユーザー情報を追加後、追加したデータを取得するURLを返却するsaveUserDataHateoasメソッドを追加している。

その他のソースコード内容は、以下のサイトを参照のこと。
https://github.com/purin-it/java/tree/master/spring-boot-rest-api-hateoas/demoRestApi



サラリーマン型フリーランスSEという働き方でお金の不安を解消しよう先日、「サラリーマン型フリーランスSE」という働き方を紹介するYouTube動画を視聴しましたので、その内容をご紹介します。 「サ...

作成したサンプルプログラム(API呼び出し)の内容

作成したサンプルプログラム(API呼び出し)の構成は以下の通り。
サンプルプログラムの構成(APIクライアント)
なお、上記の赤枠は、前提条件のプログラムから追加・変更したプログラムである。

pom.xmlの内容は以下の通りで、URL情報を追加するHATEOASのライブラリを追加している。

また、Rest APIでユーザー情報を追加後、追加したデータを取得するURLを返却する処理の呼び出しを実行するサービスクラスの内容は以下の通り。

さらに、Spring Bootのメインクラスの内容は以下の通りで、Rest APIでユーザー情報を追加後、追加したデータを取得するURLを返却する処理の呼び出しを実行するサービスクラスを呼び出している。

その他のソースコード内容は、以下のサイトを参照のこと。
https://github.com/purin-it/java/tree/master/spring-boot-rest-api-hateoas/demoRestApiCall



Code VillageはJavaScriptを中心としたサポート体制が充実したプログラミングスクールだったJavaScriptや、JavaScriptのフレームワーク「React」「Vue」を中心にオンラインで学習できるプログラミングスクール...

サンプルプログラムの実行結果

サンプルプログラムの実行結果は、以下の通り。

1) 接続先となるOracleデータベース上に、以下のUSER_DATAテーブルとデータを作成しておく。
サンプルプログラムの実行結果_1

2) 作成したサンプルプログラム(APIサービス)のSpring Bootアプリケーションと、Postmanを起動する。その後。リクエストを「POST」、URLを「http://localhost:8085/users/hateoas」、リクエストボディに追加するデータをJSON形式で設定して「Send」ボタンを押下する。
サンプルプログラムの実行結果_2

3) 実行した結果、以下のように、追加したデータと追加したデータを取得するURLが返却されることが確認できる。
サンプルプログラムの実行結果_3

4) 2)~3)までの操作を実行後に、接続先となるOracleデータベース上のUSER_DATAテーブルを確認すると、id=4のデータが追加されていることが確認できる。
サンプルプログラムの実行結果_4

5) ID=4のデータを削除する。
サンプルプログラムの実行結果_5_1

サンプルプログラムの実行結果_5_2

6) 作成したサンプルプログラム(API呼び出し)のSpring Bootアプリケーションを起動する。その結果出力されたログの内容は以下の赤枠の部分で、追加したデータと追加したデータを取得するURLが返却されることが確認できる。
サンプルプログラムの実行結果_6

7) 5)~6)までの操作を実行後に、接続先となるOracleデータベース上のUSER_DATAテーブルを確認すると、id=4のデータが追加されていることが確認できる。
サンプルプログラムの実行結果_7

要点まとめ

  • RestAPIサービスにおいて、HATEOASを利用すると、返却する情報にURL情報を追加することができる。