お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Java SDK - 概要

Catalyst向けJava SDKは、Javaプログラミング要素を使用してマイクロサービスやインタラクティブなWebおよびモバイルアプリケーションを作成し、それらをCatalystコンポーネントと連携させるための基盤を提供します。SDKはCatalyst APIに簡単にアクセスするために必要な構造を提供します。REST APIのラッパーとして機能し、Catalystサービスを効果的に利用するのに役立ちます。

Catalystは現在、以下のJavaバージョンをサポートしています:

  • Java 8
  • Java 11
  • Java 17

プロジェクトの初期化

Catalystプロジェクトを初期化するには、ビジネスロジックを記述する前に、Javaソースコードの最初のステートメントとして以下のコードスニペットを追加してください。

copy
ZCProject.initProject();
Note: Java SDKでは、この初期化コマンドをインクルードすることは必須ではありません。関数内で自動的に初期化されます。

特定のSDKスコープでCatalystプロジェクトを初期化する

Catalystでは、以下のスコープを使用してプロジェクトを初期化できます:

  • Admin: すべてのコンポーネントとそれぞれの機能に無制限にアクセスできます。たとえば、Data Storeに完全にアクセスし、読み取り、書き込み、削除などのすべての操作を実行できます。

  • User: コンポーネントや特定の機能へのアクセスを制限できます。たとえば、Data Store読み取りアクセスのみを提供できます。

Note:
  • スコープを指定してプロジェクトを初期化することは必須ではありません。デフォルトでは、初期化されたプロジェクトにはAdmin権限が付与されます。

  • ビジネスロジックを構築する際には、適切なスコープでCatalyst SDKを初期化してください。スコープに定義した権限がエンドユーザーの操作を制御します。

  • スコープは、Data StoreFile Store、およびZCQLに関連する操作にのみ適用されます。

  • ビジネスロジックの構築方法に応じて、エンドユーザーがAdmin操作またはUser操作を実行できるかどうかを決定できます。これは、エンドユーザーがCatalyst Authenticationでアプリケーションにサインアップする際に割り当てられるロールに基づいて決定されます。ロールの権限は、Data StoreおよびFile storeScopes & Permissionsセクションで設定できます。

以下のSDKスニペットを使用すると、AdminまたはUserスコープでプロジェクトを初期化し、Data StoreでSELECTクエリを実行できます:

  • Adminスコープでのプロジェクト初期化
copy
ZCProject adminProject = ZCProject.initProject("admin", ZCUserScope.ADMIN);
ZCQL.getInstance(adminProject).executeQuery("select * from test");
  • Userスコープでのプロジェクト初期化
copy
ZCProject userProject = ZCProject.initProject("user", ZCUserScope.USER);
ZCQL.getInstance().executeQuery("select * from test");

クラス階層

すべてのCatalystコンポーネントは、メンバーとメソッドでコンポーネントの動作を定義するJavaクラスとしてモデル化されています。

  • ZCProjectはSDKパッケージの基本ベースクラスです。Catalystプロジェクトの設定を初期化し、プロジェクトのコンポーネントを関連付けるメソッドを持っています。
  • SDKのクラス関係と階層は、Catalystのプロジェクト階層に従います。
  • 各クラスには、そのプロパティを取得する関数と、API呼び出しを通じて直接の子エンティティのデータを取得する関数があります。たとえば、Catalyst Data StoreクラスのZCDataStoreには、テーブルにアクセスするメンバー関数があり、テーブル名やIDなどを設定するために直接の子クラスZCTableの関数を使用できます。

Catalystの各コンポーネントのクラス階層は以下のように表されます:

flow_diagram

インスタンスオブジェクト

下位レベルのコンポーネントのデータを取得するために、クラス階層を最上位からすべてたどることは、各レベルでAPI呼び出しが必要になるため、常に効率的ではありません。これを回避するために、すべてのコンポーネントクラスにはダミーオブジェクトを取得するためのgetInstance()メソッドと、子エンティティのダミーオブジェクトを取得するメソッドがあります。

Note: getInstance()メソッドは、API呼び出しが行われないため、プロパティが設定されていない状態で返されます。これはクラスの非静的メソッドにアクセスするためにのみ使用されるダミーオブジェクトを返します。

Catalystコンポーネントのプロパティを取得するには、コンポーネントのオブジェクトをgetInstance()メソッドで呼び出し、その同じオブジェクトを使用してコンポーネントが定義する他のメソッドを呼び出します。これにより、不要なAPI呼び出しを回避できます。

例外処理

予期しない不正な動作は例外と呼ばれます。すべてのエラーと例外は、Java SDKで定義されたZCExceptionというクラスによって処理されます。クライアントコードとサーバーコードによってスローされる特定の例外をキャッチするために、ZCServerExceptionクラスとZCClientExceptionクラスがあります。

最終更新日 2026-02-23 18:09:41 +0530 IST