

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Java
<a name="ddb-java"></a>


****  

|  | 
| --- |
| 我们的客户端加密库已重命名为 AWS 数据库加密 SDK。本开发人员指南仍提供有关 [DynamoDB 加密客户端](legacy-dynamodb-encryption-client.md)的信息。 | 

本主题说明如何安装并使用适用于 DynamoDB 的 Java 客户端加密库的版本 3.*x*。有关使用适用于 DynamoDB 的 AWS 数据库加密 SDK 进行编程的详细信息，请参阅上的-dynamodb 存储库[中的 Java](https://github.com/aws/aws-database-encryption-sdk-dynamodb//tree/main/Examples/runtimes/java/DynamoDbEncryption/src/main/java/software/amazon/cryptography/examples) 示例。 aws-database-encryption-sdk GitHub

**注意**  
以下主题重点侧重于适用于 DynamoDB 的 Java 客户端加密库的版本 3.*x*。  
我们的客户端加密库已[重命名为 AWS 数据库加密 SDK](DDBEC-rename.md)。 AWS 数据库加密 SDK 继续支持[旧版 DynamoDB](legacy-dynamodb-encryption-client.md) 加密客户端版本。

**Topics**
+ [先决条件](#ddb-java-prerequisites)
+ [安装](#ddb-java-installation)
+ [使用 Java 客户端](ddb-java-using.md)
+ [Java 示例](ddb-java-examples.md)
+ [将版本 3.x 添加到现有表](ddb-java-config-existing-table.md)
+ [迁移到版本 3.x](ddb-java-migrate.md)

## 先决条件
<a name="ddb-java-prerequisites"></a>

在安装适用于 DynamoDB 的 Java 客户端加密库的版本 3.*x* 之前，请确保满足以下先决条件。

**Java 开发环境**  
您需要使用 Java 8 或更高版本。在 Oracle 网站上，转到 [Java SE 下载](https://www.oracle.com/java/technologies/downloads/)，然后下载并安装 Java SE Development Kit (JDK)。  
如果使用 Oracle JDK，您还必须下载并安装 [Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files](http://www.oracle.com/java/technologies/javase-jce8-downloads.html)。

**AWS SDK for Java 2.x**  
适用于 DynamoDB 的 AWS 数据库加密 SDK 需要的 Dy [namoDB 增强型客户端模块](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/dynamodb-enhanced-client.html)。 AWS SDK for Java 2.x可以安装整个开发工具包或仅安装此模块。  
有关更新版本的信息 适用于 Java 的 AWS SDK，请参阅[从 1.x 版迁移到 2.x 版。 适用于 Java 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration.html)  
可通过 Apache Maven 获得。 适用于 Java 的 AWS SDK 你可以声明整个模块的依赖关系 适用于 Java 的 AWS SDK，也可以只声明`dynamodb-enhanced`模块的依赖关系。  

**适用于 Java 的 AWS SDK 使用 Apache Maven 安装**
+ 要[导入整个 适用于 Java 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/setup-project-maven.html#build-the-entire-sdk-into-your-project)以作为依赖项，请在 `pom.xml` 文件中对其进行声明。
+ 要仅为 适用于 Java 的 AWS SDK中的 Amazon DynamoDB 模块创建依赖项，请按照[指定特定模块](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/setup-project-maven.html#modules-dependencies)的说明进行操作。将 `groupId` 设置为 `software.amazon.awssdk`，并将 `artifactID` 设置为 `dynamodb-enhanced`。
**注意**  
如果您使用 AWS KMS 密钥环或 AWS KMS 分层密钥环，则还需要为模块创建依赖关系。 AWS KMS 将 `groupId` 设置为 `software.amazon.awssdk`，并将 `artifactID` 设置为 `kms`。

## 安装
<a name="ddb-java-installation"></a>

您可以按以下方式安装适用于 DynamoDB 的 Java 客户端加密库的版本 3.*x*。

**使用 Apache Maven**  
适用于 Java 的 Amazon DynamoDB Encryption Client 通过 [Apache Maven](https://maven.apache.org/) 提供，并具有以下依赖项定义。  

```
<dependency>
  <groupId>software.amazon.cryptography</groupId>
  <artifactId>aws-database-encryption-sdk-dynamodb</artifactId>
  <version>{{version-number}}</version>
</dependency>
```

**使用 Gradle Kotlin**  
通过将以下内容添加到 Gradle 项目的*依赖项*部分，您可以使用 [Gradle](https://gradle.org/) 在适用于 Java 的 Amazon DynamoDB Encryption Client 上声明依赖项。  

```
implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:{{version-number}}")
```

**手动方式**  
[要安装适用于 DynamoDB 的 Java 客户端加密库，请克隆或下载-dynamodb 存储库。aws-database-encryption-sdk](https://github.com/aws/aws-database-encryption-sdk-dynamodb/) GitHub

安装 SDK 后，请先查看本指南中的示例代码和上的 aws-database-encryption-sdk-dynamodb [存储库中的 Java 示例](https://github.com/aws/aws-database-encryption-sdk-dynamodb//tree/main/Examples/runtimes/java/DynamoDbEncryption/src/main/java/software/amazon/cryptography/examples)。 GitHub