Java 用 Amazon QLDB ドライバー - Amazon Quantum Ledger Database (Amazon QLDB)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Java 用 Amazon QLDB ドライバー

台帳内のデータを使用するには、AWS が提供するドライバーを使用して Java アプリケーションから Amazon QLDB に接続できます。次のトピックでは、Java 用 QLDB ドライバーの使用を開始する方法について説明します。

ドライバーに関するリソース

Java ドライバーでサポートされる機能の詳細については、以下のリソースを参照してください。

前提条件

Java 用 QLDB ドライバーを開始する前に、次の操作を行う必要があります。

  1. Amazon QLDB へのアクセス」にある AWS の設定手順に従います。これには以下が含まれます。

    1. AWS にサインアップする。

    2. QLDB の適切なアクセス許可を持つユーザーを作成します。

    3. 開発に必要なプログラムへのアクセスを提供します。

  2. 以下をダウンロードおよびインストールして、Java 開発環境を設定します。

    1. Java SE 開発キット 8 (Amazon Corretto 8 など)。

    2. (オプション) 任意の Java 統合開発環境 (IDE) (EclipseIntelliJ など)。

  3. デフォルトの AWS の認証情報とリージョンを設定する」に従って AWS SDK for Java 用の開発環境を設定します。

次に、すべてのチュートリアル用のサンプルアプリケーションをダウンロードするか、Java プロジェクトにのみドライバーをインストールして短いコード例を実行できます。

  • 既存のプロジェクトに QLDB ドライバーと AWS SDK for Java をインストールするには、「インストール」に進みます。

  • プロジェクトを設定し、台帳の基本的なデータトランザクションを示す短いコード例については、「クイックスタートチュートリアル」を参照してください。

  • チュートリアルのサンプルアプリケーション全体のデータプレーンと管理 API の両方のオペレーションを実行する詳細な例については、「Java チュートリアル」を参照してください。

デフォルトの AWS の認証情報とリージョンを設定する

QLDB ドライバーとその基になる AWS SDK for Java では、アプリケーションのランタイムに AWS 認証情報を提供する必要があります。このガイドのコード例では、AWS 認証情報ファイルを使用していることを前提としています。詳細については、「AWS SDK for Java 2.x デベロッパーガイド」の「デフォルトの認証情報とリージョンを設定する」を参照してください。

これらの手順の一部として、デフォルトの QLDB エンドポイントを決定するためにデフォルトの AWS リージョン も設定する必要があります。コード例では、デフォルトの AWS リージョン で QLDB に接続します。QLDB が利用可能なリージョンの完全なリストについては、「AWS 全般のリファレンス」の「Amazon QLDB エンドポイントとクォータ」を参照してください。

~/.aws/credentials という名前の AWS 認証情報ファイルの例を次に示します。ここで、チルダ文字 (~) はホームディレクトリを表します。

[default] aws_access_key_id = your_access_key_id aws_secret_access_key = your_secret_access_key

your_access_key_idyour_secret_access_key の値は、独自の AWS 認証情報の値に置き換えてください。

インストール

QLDB は、以下の Java ドライバーバージョンと AWS SDK の依存関係をサポートしています。

ドライバーのバージョン AWS SDK ステータス 最新リリース日
1.x AWS SDK for Java 1.x 本番リリース 2020 年 3 月 20 日
2.x AWS SDK for Java 2.x 本番リリース 2021 年 6 月 4 日

QLDB ドライバーをインストールするには、Gradle や Maven などの依存関係管理システムを使用することをお勧めします。例えば、以下のアーティファクトを Java プロジェクトの依存関係として追加します。

2.x

Gradle

build.gradle 設定ファイルにこの依存関係を追加します。

dependencies { compile group: 'software.amazon.qldb', name: 'amazon-qldb-driver-java', version: '2.3.1' }

Maven

pom.xml 設定ファイルにこの依存関係を追加します。

<dependencies> <dependency> <groupId>software.amazon.qldb</groupId> <artifactId>amazon-qldb-driver-java</artifactId> <version>2.3.1</version> </dependency> </dependencies>

このアーティファクトには、AWS SDK for Java 2.x コアモジュール、Amazon Ion ライブラリ、およびその他の必要な依存関係が自動的に含まれています。

1.x

Gradle

build.gradle 設定ファイルにこの依存関係を追加します。

dependencies { compile group: 'software.amazon.qldb', name: 'amazon-qldb-driver-java', version: '1.1.0' }

Maven

pom.xml 設定ファイルにこの依存関係を追加します。

<dependencies> <dependency> <groupId>software.amazon.qldb</groupId> <artifactId>amazon-qldb-driver-java</artifactId> <version>1.1.0</version> </dependency> </dependencies>

このアーティファクトには、AWS SDK for Java コアモジュール、Amazon Ion ライブラリ、およびその他の必要な依存関係が自動的に含まれています。

重要

Amazon Ion 名前空間 — アプリケーションに Amazon Ion クラスをインポートする場合は、名前空間 com.amazon.ion の下にあるパッケージを使用する必要があります。AWS SDK for Java は、名前空間 software.amazon.ion の別の Ion パッケージに依存しますが、これは QLDB ドライバーと互換性がないレガシーパッケージです。

台帳に対して基本的なデータトランザクションを実行する方法を示す短いコード例については、「クックブックリファレンス」を参照してください。

他のオプションのライブラリ

オプションで、プロジェクトに以下の便利なライブラリを追加することもできます。これらのアーティファクトは、Java チュートリアルサンプルアプリケーションで必須の依存関係にあります。

  1. aws-java-sdk-qldb - AWS SDK for Java の QLDB モジュール。QLDB でサポートされる最小のバージョンは、1.11.785 です。

    このモジュールを使用することで、アプリケーションは Amazon QLDB API リファレンス に表示されている管理 API オペレーションと直接やり取りできます。

  2. jackson-dataformat-ion - Ion 用の FasterXML の Jackson データフォーマットモジュール。サンプルアプリケーションにはバージョン 2.10.0 以降が必要です。

Gradle

build.gradle 設定ファイルにこれら依存関係を追加します。

dependencies { compile group: 'com.amazonaws', name: 'aws-java-sdk-qldb', version: '1.11.785' compile group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-ion', version: '2.10.0' }
Maven

pom.xml 設定ファイルにこれら依存関係を追加します。

<dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-qldb</artifactId> <version>1.11.785</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-ion</artifactId> <version>2.10.0</version> </dependency> </dependencies>