

# このデベロッパーガイドのコード例の実行
<a name="CodeSamples"></a>

AWS SDK では、次の言語で Amazon DynamoDB を幅広くサポートしています。
+ [Java](https://aws.amazon.com/sdk-for-java): 
+ [ブラウザの JavaScript](https://aws.amazon.com/sdk-for-browser)
+ [.NET](https://aws.amazon.com/sdk-for-net)
+ [Node.js](https://aws.amazon.com/sdk-for-node-js)
+ [PHP](https://aws.amazon.com/sdk-for-php)
+ [Python](https://aws.amazon.com/sdk-for-python) \$1
+ [Ruby](https://aws.amazon.com/sdk-for-ruby)
+ [C\$1\$1](https://aws.amazon.com/sdk-for-cpp)
+ [Go](https://aws.amazon.com/sdk-for-go): 
+ [Android](https://aws.amazon.com/mobile/sdk/)
+ [iOS](https://aws.amazon.com/mobile/sdk/)

この開発者ガイドのコード例は、以下のプログラミング言語を使用して DynamoDB オペレーションの詳細を示しています。
+ [Java コードの例](CodeSamples.Java.md)
+ [.NET コード例](CodeSamples.DotNet.md)

この演習を開始する前に、AWS アカウントを作成し、アクセスキーとシークレットキーを取得して、コンピュータで AWS Command Line Interface (AWS CLI) をセットアップします。詳細については、「」を参照してください[DynamoDB (ウェブサービス) の設定](SettingUp.DynamoWebService.md)

**注記**  
DynamoDB のダウンロード可能バージョンを使用する場合は、AWS CLI を使用してテーブルとサンプルデータを作成する必要があります。また、各 `--endpoint-url` コマンドで AWS CLI パラメータも指定する必要があります。詳細については、「[ローカルエンドポイントの設定](DynamoDBLocal.UsageNotes.md#DynamoDBLocal.Endpoint)」を参照してください。

# DynamoDB でのコード例用のテーブルの作成とデータのロード
<a name="SampleData"></a>

DynamoDB でのテーブルの作成、サンプルデータセットのロード、データに対するクエリの実行、およびデータの更新に関する基本については、以下を参照してください。
+ [ステップ 1: DynamoDB にテーブルを作成する](getting-started-step-1.md)
+ [ステップ 2: DynamoDB テーブルにデータを書き込む](getting-started-step-2.md)
+ [ステップ 3: DynamoDB テーブルからデータを読み込む](getting-started-step-3.md)
+ [ステップ 4: DynamoDB テーブルのデータを更新する](getting-started-step-4.md)

# Java コードの例
<a name="CodeSamples.Java"></a>

**Topics**
+ [Java: AWS 認証情報の設定](#CodeSamples.Java.Credentials)
+ [Java: AWS リージョンとエンドポイントの設定](#CodeSamples.Java.RegionAndEndpoint)

この開発者ガイドには、Java コードスニペットとすぐに使用できるプログラムが含まれています。これらのコード例は、次のセクションで確認することができます。
+ [DynamoDB での項目と属性の操作](WorkingWithItems.md)
+ [DynamoDB でのテーブルとデータの操作](WorkingWithTables.md)
+ [DynamoDB のテーブルに対するクエリの実行](Query.md)
+ [DynamoDB でのテーブルのスキャン](Scan.md)
+ [DynamoDB でのセカンダリインデックスを使用したデータアクセス性の向上](SecondaryIndexes.md)
+ [Java 1.x: DynamoDBMapper](DynamoDBMapper.md)
+ [DynamoDB Streams の変更データキャプチャ](Streams.md)

Eclipse と [AWS Toolkit for Eclipse](https://aws.amazon.com/eclipse/) を使用して、すぐに開始できます。フル機能の IDE に加えて、自動更新で AWS SDK for Java および AWS アプリケーションの構築用に事前設定されたテンプレートも取得できます。

**Java サンプルコードを実行するには (Eclipse を使用)**

1. [Eclipse](http://www.eclipse.org) IDE をダウンロードし、インストールします。

1. のダウンロードおよびインストール。[AWS Toolkit for Eclipse](https://aws.amazon.com/eclipse/)。

1. Eclipse を起動し、**Eclipse** メニューから、**[File]** (ファイル)、**[New]** (新規)、**[Other]** (その他) の順に選択します。

1. **[Select a wizard]** (ウィザードの選択) で、**AWS**、**[AWS Java Project]** ( Java プロジェクト) の順に選択してから、**[Next]** (次へ) をクリックします。

1. **[AWS Java の作成]** で、次の操作を行います。

   1. **[Project name]** (プロジェクト名) にプロジェクトの名前を入力します。

   1. **[Select Account]** (アカウントの選択) リストから認証情報プロファイルを選択します。

      [AWS Toolkit for Eclipse](https://aws.amazon.com/eclipse/) を初めて使用する場合、**[AWS アカウントの設定]** を選択して、AWS 認証情報を設定します。

1. **[Finish]** (完了) を選択してプロジェクトを作成します。

1. **Eclipse** メニューから **[File]** (ファイル)、**[New]** (新規)、**[Class]** (クラス) の順に選択します。

1. **[Java Class]** (Java クラス) の **[Name]** (名前) にクラスの名前を入力し (実行するコード例と同じ名前を使用)、**[Finish]** (完了) を選択してクラスを作成します。

1. ドキュメントページから Eclipse エディタにサンプルコードをコピーします。

1. コードを実行するには、Eclipse メニューの **[Run]** (実行) を選択します。

SDK for Java には、DynamoDB を操作するためにスレッドセーフなクライアントが用意されています。ベストプラクティスとして、ご利用のアプリケーションでクライアントを 1 つ作成し、そのクライアントをスレッド間で再利用します。

詳細については、[AWS SDK for Java](https://aws.amazon.com/sdk-for-java) を参照してください。

**注記**  
このガイドのサンプルコードは、最新バージョンの AWS SDK for Java で使用するためのものです。  
AWS Toolkit for Eclipse を使用している場合、SDK for Java の自動更新を設定することができます。これを Eclipse で行うには、**[Preferences]** (基本設定) に移動し、**AWS Toolkit**、**AWS SDK for Java**、**[Download new SDKs automatically]** (新しい SDK を自動的にダウンロード) の順に選択します。

## Java: AWS 認証情報の設定
<a name="CodeSamples.Java.Credentials"></a>

SDK for Java では、ランタイムにアプリケーションに AWS 認証情報を指定する必要があります。このガイドのコード例では、AWS 認証情報ファイルを使用していることを前提としています。詳細については、「AWS SDK for Java デベロッパーガイド」の「[開発用の AWS 認証情報のセットアップ](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/set-up-creds.html)」を参照してください。

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

```
[default]
aws_access_key_id = AWS access key ID goes here
aws_secret_access_key = Secret key goes here
```

## Java: AWS リージョンとエンドポイントの設定
<a name="CodeSamples.Java.RegionAndEndpoint"></a>

デフォルトでは、コード例は、米国西部 (オレゴン) リージョンの DynamoDB にアクセスします。このリージョンを変更するには、`AmazonDynamoDB` プロパティを変更します。

次のサンプルコードは、新しい `AmazonDynamoDB` をインスタンス化します。

```
import software.amazon.dynamodb.AmazonDynamoDBClientBuilder;
import com.amazonaws.regions.Regions;
...
// This client will default to US West (Oregon)
AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()
.withRegion(Regions.US_WEST_2)
.build();
```

`withRegion` メソッドを使用して、利用可能な任意のリージョンで、DynamoDB を対象としてコードを実行できます。リージョンのリストについては、「*Amazon Web Services 全般のリファレンス*」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#ddb_region)」を参照してください。

ローカルコンピュータで DynamoDB を使用してサンプルコードを実行する場合は、エンドポイントを設定する必要があります。

### AWS SDKV1
<a name="CodeSamples.Java.RegionAndEndpoint.V1"></a>

```
AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().withEndpointConfiguration(
new AwsClientBuilder.EndpointConfiguration("http://localhost:8000", "us-west-2"))
.build();
```

### AWS SDK V2
<a name="CodeSamples.Java.RegionAndEndpoint.V2"></a>

```
DynamoDbClient client = DynamoDbClient.builder()
    .endpointOverride(URI.create("http://localhost:8000"))
    // The region is meaningless for local DynamoDb but required for client builder validation
    .region(Region.US_EAST_1)
    .credentialsProvider(StaticCredentialsProvider.create(
    AwsBasicCredentials.create("dummy-key", "dummy-secret")))
    .build();
```

# .NET コード例
<a name="CodeSamples.DotNet"></a>

**Topics**
+ [.NET: AWS 認証情報の設定](#CodeSamples.DotNet.Credentials)
+ [.NET: AWS リージョンとエンドポイントの設定](#CodeSamples.DotNet.RegionAndEndpoint)

このガイドには、.NET コードスニペットとすぐに使用できるプログラムが含まれています。これらのコード例は、次のセクションで確認することができます。
+ [DynamoDB での項目と属性の操作](WorkingWithItems.md)
+ [DynamoDB でのテーブルとデータの操作](WorkingWithTables.md)
+ [DynamoDB のテーブルに対するクエリの実行](Query.md)
+ [DynamoDB でのテーブルのスキャン](Scan.md)
+ [DynamoDB でのセカンダリインデックスを使用したデータアクセス性の向上](SecondaryIndexes.md)
+ [DynamoDB での .NET ドキュメントの操作](DotNetSDKMidLevel.md)
+ [.NET オブジェクト永続性モデルと DynamoDB の使用](DotNetSDKHighLevel.md)
+ [DynamoDB Streams の変更データキャプチャ](Streams.md)

AWS SDK for .NET と Toolkit for Visual Studio を使用すると、すぐに始めることができます。

**.NET サンプルコードを実行するには (Visual Studio を使用)**

1. [Microsoft Visual Studio](https://www.visualstudio.com) をダウンロードし、インストールします。

1. (オプション) [Toolkit for Visual Studio](https://aws.amazon.com/visualstudio/) をダウンロードしてインストールします。

1. AWS 認証情報をセットアップします。共有 AWS 認証情報ファイル (`~/.aws/credentials`) で認証情報プロファイルを設定します。詳細については、「*AWS SDK for .NET デベロッパーガイド*」の「[AWS 認証情報の設定](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config-creds.html)」を参照してください。

1. Visual Studio を起動します。**[File]** (ファイル)、**[New]** (新規)、**[Project]** (プロジェクト) の順に選択します。

1. **[コンソールアプリ]** を検索し、.NET をターゲットとする C\$1 テンプレートを選択し、**[次へ]** を選択します。プロジェクト名と場所を設定し、**[作成]** を選択します。

1. プロジェクトに DynamoDB NuGet パッケージ用 AWS SDK を追加します。

   1. ソリューションエクスプローラーで、プロジェクトのコンテキスト (右クリック) メニューを開いて、**[Manage NuGet Packages]** (NuGet パッケージの管理) を選択します。

   1. NuGet パッケージマネージャーで、**[Browse]** (参照) を選択します。

   1. 検索ボックスに「**AWSSDK.DynamoDBv2**」と入力し、完了するまで待ちます。

   1. **AWSSDK.DynamoDBv2**、**[Install]** (インストール) の順に選択します。

1. Visual Studio プロジェクトで、`Program.cs` を開きます。内容を、実行するドキュメントページのコード例に置き換えます。

1. コードを実行するには、Visual Studio ツールバーの **[Start]** (開始) を選択します。

SDK for .NET には、DynamoDB を操作するためにスレッドセーフなクライアントが用意されています。ベストプラクティスとして、ご利用のアプリケーションでクライアントを 1 つ作成し、そのクライアントをスレッド間で再利用します。

詳細については、「[AWS SDK for .NET](https://aws.amazon.com/sdk-for-net)」を参照してください。

**注記**  
このガイドのサンプルコードは、最新バージョンの AWS SDK for .NET で使用するためのものです。

## .NET: AWS 認証情報の設定
<a name="CodeSamples.DotNet.Credentials"></a>

SDK for .NET では、ランタイムにアプリケーションに AWS 認証情報を指定する必要があります。このガイドのコード例は、SDK ストアを使用して AWS 認証情報ファイルを管理することを前提としています。詳細については、「*AWS SDK for .NET デベロッパーガイド*」の「[SDK ストアの使用](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config-creds.html#sdk-store)」を参照してください。

Toolkit for Visual Studio では、任意の数のアカウントの複数セットの認証情報がサポートされています。各セットは*プロファイル*と呼ばれています。Visual Studio では、プロジェクトの `App.config` ファイルにエントリを追加するため、アプリケーションはランタイム時に AWS 認証情報を見つけることができます。

次の例は、Toolkit for Visual Studio を使用した新しいプロジェクトの作成時に生成されたデフォルトの `App.config` ファイルを示しています。

```
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
    <add key="AWSProfileName" value="default"/>
    <add key="AWSRegion" value="us-west-2" />
 </appSettings>
</configuration>
```

ランタイム時に、このプログラムは `AWSProfileName` エントリで指定されているように、AWS 認証情報の `default` セットを使用します。AWS 認証情報自体は、暗号化されたフォームで SDK ストアに保持されます。Toolkit for Visual Studio は、すべて Visual Studio 内からの認証情報を管理するためのグラフィカルユーザーインターフェイスを使用します。詳細については、「*AWS Toolkit for Visual Studio ユーザーガイド*」の「[認証情報の指定](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/tkv_setup.html#creds)」を参照してください。

**注記**  
デフォルトでは、コード例は、米国西部 (オレゴン) リージョンの DynamoDB にアクセスします。リージョンを変更するには、App.config ファイルで `AWSRegion` エントリを変更します。`AWSRegion` を DynamoDB が利用可能なすべてのリージョンに設定します。リージョンのリストについては、「*Amazon Web Services 全般のリファレンス*」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#ddb_region)」を参照してください。

## .NET: AWS リージョンとエンドポイントの設定
<a name="CodeSamples.DotNet.RegionAndEndpoint"></a>

デフォルトでは、コード例は、米国西部 (オレゴン) リージョンの DynamoDB にアクセスします。リージョンを変更するには、`AWSRegion` ファイルで `App.config` エントリを変更します。または、`AmazonDynamoDBClient` プロパティを変更してリージョンを変更することもできます。

次のサンプルコードは、新しい `AmazonDynamoDBClient` をインスタンス化します。クライアントは、別のリージョンでコードが DynamoDB に対して実行するように変更されます。

```
AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
// This client will access the US East 1 region.
clientConfig.RegionEndpoint = RegionEndpoint.USEast1;
AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);
```

リージョンのリストについては、「*Amazon Web Services 全般のリファレンス*」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#ddb_region)」を参照してください。

ローカルコンピュータで DynamoDB を使用してサンプルコードを実行する場合は、エンドポイントを設定する必要があります。

```
AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
// Set the endpoint URL
clientConfig.ServiceURL = "http://localhost:8000";
AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);
```