

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 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)

您可以搭配使用 [AWS Toolkit for Eclipse](https://aws.amazon.com/eclipse/) 與 Eclipse 來快速開始使用。除了功能完整的 IDE 之外，您還可以取得 適用於 Java 的 AWS SDK 具有自動更新的 ，以及用於建置 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** (AWS Java 專案)，再選擇 **Next** (下一步)。

1. 在**建立 AWS Java 中**，執行下列動作：

   1. 在**專案名稱** 中，輸入您的專案名稱。

   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 (執行)**。

Java 軟體開發套件提供可與 DynamoDB 搭配使用的安全執行緒用戶端。根據最佳實務，您的應用程式應該建立一個用戶端，並在執行緒之間重複使用該用戶端。

如需更多資訊，請參閱[適用於 Java 的 AWS SDK](https://aws.amazon.com/sdk-for-java)。

**注意**  
此指南中的程式碼範例適用於最新版的 適用於 Java 的 AWS SDK。  
如果您使用的是 AWS Toolkit for Eclipse，則可以為適用於 Java 的 SDK 設定自動更新。若要在 Eclipse 中執行此作業，請前往 **Preferences** (偏好設定)，然後依次選擇 **AWS 工具組**、**適用於 Java 的 AWS SDK**、**Download new SDK automatically** (自動下載新的開發套件)。

## Java：設定您的 AWS 登入資料
<a name="CodeSamples.Java.Credentials"></a>

適用於 Java 的 SDK 需要您在執行時間提供 AWS 登入資料給應用程式。本指南中的程式碼範例假設您使用的是 AWS 登入資料檔案，如 *適用於 Java 的 AWS SDK 開發人員指南*中的[設定 AWS 登入資料](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/set-up-creds.html)中所述。

以下是名為 的 AWS 登入資料檔案範例`~/.aws/credentials`，其中波狀符號字元 (`~`) 代表您的主目錄。

```
[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 SDK V1
<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();
```