

The Amazon SDK for Java 1.x reached end-of-support on December 31, 2025. We recommend that you migrate to the [Amazon SDK for Java 2.x](https://docs.amazonaws.cn/sdk-for-java/latest/developer-guide/home.html) to continue receiving new features, availability improvements, and security updates.

# DynamoDB Examples Using the Amazon SDK for Java
<a name="examples-dynamodb"></a>

This section provides examples of programming [DynamoDB](https://www.amazonaws.cn/dynamodb/) using the [Amazon SDK for Java](https://www.amazonaws.cn/sdk-for-java/).

**Note**  
The examples include only the code needed to demonstrate each technique. The [complete example code is available on GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/java). From there, you can download a single source file or clone the repository locally to get all the examples to build and run.

**Topics**
+ [Use Amazon account-based endpoints](#account-based-endpoint-routing)
+ [Working with Tables in DynamoDB](examples-dynamodb-tables.md)
+ [Working with Items in DynamoDB](examples-dynamodb-items.md)

## Use Amazon account-based endpoints
<a name="account-based-endpoint-routing"></a>

DynamoDB offers [Amazon account-based endpoints](https://docs.amazonaws.cn/amazondynamodb/latest/developerguide/Programming.SDKOverview.html#Programming.SDKs.endpoints) that can improve performance by using your Amazon account ID to streamline request routing. 

To take advantage of this feature, you need to use version 1.12.771 or greater of version 1 of Amazon SDK for Java. You can find the latest version of the SDK listed in the [Maven central repository](https://central.sonatype.com/artifact/com.amazonaws/aws-java-sdk-bom). After a supported version of SDK is active, it automatically uses the new endpoints.

If you want to opt out of the account-based routing, you have four options:
+ Configure a DynamoDB service client with the `AccountIdEndpointMode` set to `DISABLED`.
+ Set an environment variable.
+ Set a JVM system property.
+ Update the shared Amazon config file setting.

The following snippet is an example of how to disable account-based routing by configuring a DynamoDB service client:

```
ClientConfiguration config = new ClientConfiguration()
    .withAccountIdEndpointMode(AccountIdEndpointMode.DISABLED);
AWSCredentialsProvider credentialsProvider = new EnvironmentVariableCredentialsProvider();

AmazonDynamoDB dynamodb = AmazonDynamoDBClientBuilder.standard()
    .withClientConfiguration(config)
    .withCredentials(credentialsProvider)
    .withRegion(Regions.US_WEST_2)
    .build();
```

The Amazon SDKs and Tools Reference Guide provides more information on the last [three configuration options](https://docs.amazonaws.cn/sdkref/latest/guide/feature-account-endpoints.html).