クイックスターターズ

Spring Bootのバックエンドを構築する方法は?

30min

はじめに

このチュートリアルでは、Back4Appを使用してSpring Bootのバックエンドを構築する方法を学びます。

Spring Frameworkを活用したJavaベースのWebアプリケーションであるSpring Bootアプリケーションを、データベース管理、Cloud Code、RESTおよびGraphQL API、ユーザー認証、ファイルストレージ、リアルタイムクエリなどの重要なBack4App機能に接続する方法を説明します。

これらの手順に従うことで、Spring Bootの機能をBack4Appが提供する強力なParseプラットフォームとシームレスに統合できるようになります。

Back4Appをバックエンドとして活用することで、データベース接続、セキュリティ設定、デプロイプロセスが大幅に簡素化されます。

サーバーのセットアップや手動のデータベース管理の複雑さから解放されるため、Spring Bootアプリケーションのビジネスロジックの記述に集中できます。

このチュートリアルの終わりまでには、WebアプリやSpring Web上で動作するJavaアプリケーションの基盤となる、堅牢でスケーラブルなバックエンドを持ち、簡単に本番環境向けのデプロイに拡張できるようになります。

前提条件

このガイドを完了するには、以下の準備が整っていることを確認してください:

  • Back4Appアカウントと新しいBack4Appプロジェクト Back4appの始め方 アカウントがない場合は無料でサインアップしてください。
  • Java開発環境 次のものをインストールする必要があります: Java SE 8以上Maven または Gradle. これはあなたの 開発環境を設定するために不可欠です。
  • Spring Bootの基本 spring bootアプリケーションの作成に慣れていること。必要に応じて、 Spring Boot公式ドキュメントを参照して、 spring security, コントローラー、サービスなどについて学んでください。
  • Parse/Back4Appの基本知識 Parseプラットフォームの仕組みを知っていることは有益です。もし新しい場合は、 Back4Appのドキュメントを確認してください。

これらの前提条件が整っていることで、スムーズなチュートリアル体験が保証されます。それでは、Back4Appを使用してバックエンドの構築を始めましょう!

ステップ1 – Back4Appで新しいプロジェクトを作成し、接続する

このステップが必要な理由

新しいBack4Appプロジェクトを作成することは、あなたのバックエンドの基盤です。これにより、データベース、設定、セキュリティルールを保持し、Parseプラットフォームを介してあなたの spring bootアプリケーション データを管理することができます。

Back4Appプロジェクトの作成

  1. Back4Appアカウントにログインします。
  2. 「新しいアプリ」をクリックして、Back4Appダッシュボードで操作します。
  3. プロジェクトの名前を提供します(例:「SpringBoot-Backend-Tutorial」)そして、セットアップを完了します。
Document image


完了すると、Back4Appダッシュボードに新しいプロジェクトが表示されます。

Parse Java SDKのインストールと設定(オプション)

Back4AppはParseプラットフォームを使用しており、Java SDKがSpring Bootアプリと統合できます。好みに応じて、java developerコードから直接REST/GraphQL呼び出しを行うこともできます。ただし、SDKを使用することで、データの保存、クエリ、ユーザー認証などの操作が簡素化されます。

Maven依存関係(例):

XML


あなたのSpring Bootメインアプリケーションクラスまたは設定クラスで、Parseを初期化します:

Java


「YOUR_APP_ID」と「YOUR_CLIENT_KEY」をBack4Appダッシュボードにある資格情報に置き換えることを忘れないでください。これらはアプリ設定またはセキュリティとキーの下に表示されます。

ステップ2 – データベースの設定

1. データモデルの作成

あなたの データベース接続 はBack4Appによって管理されています。ダッシュボードでデータモデル(クラス)を作成するか、Parse SDKを通じてオブジェクトを保存することで自動的に作成させることができます。より良い管理のために、Back4Appダッシュボードに移動して:

  • 「データベース」をクリック
  • 新しいクラスを作成(例:「Todo」)
  • カラムを追加(フィールド)として title(文字列)や isCompleted(ブール値)
新しいクラスを作成
新しいクラスを作成


2. AIエージェントを使用したデータモデルの作成

Back4Appは、あなたのためにスキーマを生成できる AIエージェント を提供しています:

  1. ダッシュボードまたはメニューから AIエージェントを開く
  2. データモデルを説明する 簡単な言葉で。
  3. AIエージェントに 関連するクラスとフィールドの作成を任せる。
Document image


3. SDKを使用したデータの読み取りと書き込み

Parse Java SDKを spring framework プロジェクトに追加した場合、次のようにクラスと対話できます:

Java


4. REST APIを使用したデータの読み取りと書き込み

また、RESTエンドポイントを介してBack4Appデータベースと対話することもできます:

Bash


5. GraphQL APIを使用したデータの読み取りと書き込み

Back4AppにはGraphQLエンドポイントもあります:

GraphQL


6. ライブクエリの使用(オプション)

あなたの webアプリ がリアルタイムの更新を必要とする場合、Back4Appダッシュボードでライブクエリを有効にし、あなたの spring web アプリケーションに接続できます。通常、Javaクライアントでイベントにサブスクライブするか、ライブクエリをサポートするフロントエンドツールを使用します。

ステップ3 – ACLとCLPを使用したセキュリティの適用

簡単な概要

Back4Appの ACL(アクセス制御リスト)と CLP(クラスレベルの権限)はあなたのデータを保護します。これは spring security を補完または補強し、あなたの javaアプリケーション をさらに保護します。

ステップバイステップ

  • クラスレベルの権限(CLP): “データベース”タブの“クラスレベルの権限”で設定します。
  • ACL: コードまたはダッシュボードからオブジェクトレベルの権限を設定します。
Document image


詳細については、 アプリセキュリティガイドライン を参照してください。

ステップ4 – クラウドコード関数の作成

なぜCloud Codeなのか

Cloud Codeを使用すると、敏感な ビジネスロジック をサーバーに移動または保護できます。これは、クライアント側に公開すべきでないロジックが必要な場合や、外部APIを統合したい場合に特に役立ちます。

例の関数

JS


デプロイメント

Back4App CLI またはBack4Appダッシュボードを使用してコードをデプロイします。その後、Java SDK、REST、またはGraphQLを介してSpring Bootから関数を直接呼び出すことができます。

ステップ5 – 認証の設定

ユーザー認証

Parse Userクラスは、ユーザーのサインアップ、ログイン、およびセッショントークンを処理します。これを Spring Bootアプリケーション に統合するには、Java SDKを呼び出すか、REST呼び出しを使用します。

サインアップ (Java SDKの例):

Java


ソーシャルログイン

GoogleやFacebookなどのプロバイダーの場合、ParseはOAuthベースのログインをサポートしています。追加の設定詳細については、ソーシャルログインのドキュメント を確認してください。

ステップ 6 – ファイルストレージの取り扱い

ファイルストレージの設定

ファイルをアップロードするには、ParseFileクラスを使用します。あるいは、RESTを使用することもできます:

Java


Bash


ステップ 7 – メール確認とパスワードリセット

概要

安全なユーザーアカウントを確保するために、あなたのjava developerワークフローで、Back4Appダッシュボードでメール確認とパスワードリセットを有効にしてください。

設定

  • メール確認を有効にする あなたのアプリのメール設定の下で。
  • ユーザー体験を向上させるために メールテンプレートを設定してください。

ステップ 8 – クラウドジョブによるタスクのスケジューリング

クラウドジョブの機能

クラウドジョブは、定期的なデータクリーンアップ、毎日の通知送信、またはシステム全体のメンテナンスなどのタスクを自動化することができます。以下は、ジョブの例です:

JS


バック4アプリのダッシュボードから、サーバー設定 > バックグラウンドジョブでスケジュールします。

クラウドジョブのスケジューリング
クラウドジョブのスケジューリング


ステップ9 – ウェブフックの統合

定義と設定

ウェブフックは、あなたのJavaアプリケーションがイベント駆動のHTTPリクエストを送信または受信できるようにします。たとえば、Back4Appデータベースにオブジェクトが作成されるたびに外部サービスに通知することができます。

  1. Back4Appダッシュボードに移動 > その他 > ウェブフック
  2. ウェブフックを追加 ターゲットエンドポイントと共に
  3. トリガーを設定 イベント(作成、更新、削除)のために
ウェブフックの追加
ウェブフックの追加


ステップ10 – Back4App管理パネルの探索

どこで見つけるか

Back4App管理アプリは、非技術的なチームメンバーがデータを表示および変更するためのモデル中心のユーザーフレンドリーなインターフェースです。アプリダッシュボード > その他 > 管理アプリに移動して有効にします。

管理アプリを有効にする
管理アプリを有効にする


サブドメインを選択し、最初の管理ユーザーを作成してください。次に、コードに触れることなくデータを管理するためにログインします。

Document image


結論

Back4AppとのSpring Boot統合を完了したことをおめでとうございます!データ、認証、ファイル、リアルタイムのサブスクリプション、スケジュールされたジョブを管理するSpring Bootのバックエンドを構築する方法を見てきました。すべて最小限のオーバーヘッドで行えます。

この堅牢でスケーラブルなアプローチにより、低レベルのサーバーやデータベースの詳細を心配することなく、ビジネスロジックの記述に集中できます。

あなたは:

  • Back4Appプロジェクトを作成し、Springフレームワークに接続しました。
  • クラスとデータモデルを使用してデータベース接続を管理する方法を学びました。
  • ACL、CLP、Cloud Code関数、およびCloud Jobsによるスケジューリングを実装しました。
  • ファイルストレージ、ユーザー認証、およびWebhookなどの高度な機能を構成しました。

これらの基本をもとに、あなたのSpring Bootアプリケーションは、完全なSpringセキュリティやより複雑なデータ関係を持つ本番環境向けのシステムに成長する準備が整いました。

Back4Appの他の機能や、現代のWebアプリの開発を加速するSpring Bootの機能を探求することをお勧めします。

次のステップ

  • 本番環境に向けてスケールアップ: パフォーマンスを最適化し、キャッシュを追加し、CLPで高度な役割を構成します。
  • さらなる統合を追加: Cloud CodeまたはWebhookを介して外部サービス(決済ゲートウェイ、分析など)に接続します。
  • 公式ドキュメントを参照: Back4Appのドキュメントと高度なParse技術について理解を深めます。
  • チュートリアルを探求: リアルタイムチャット、プッシュ通知、または位置情報サービスに関する専門的なチュートリアルを探します。それらをSpring Bootのセットアップと組み合わせて、最先端のWebアプリケーションを構築します。

Spring BootとBack4Appの相乗効果を活用することで、クリーンなコードベースを維持しながら、Javaアプリケーションを迅速に開発、保守、スケールアップできます。