

# TryDax.java
<a name="DAX.client.run-application-java.TryDax"></a>

O arquivo `TryDax.java` contém o método `main`. Se você executar o programa sem parâmetros de linha de comando, ele criará um cliente do Amazon DynamoDB e usará esse cliente para todas as operações de API. Se você especificar um endpoint de cluster do DynamoDB Accelerator (DAX) na linha de comando, o programa também criará um cliente do DAX e o usará para operações `GetItem`, `Query` e `Scan`.

É possível modificar o programa de várias maneiras:
+ Use o cliente do DAX em vez do cliente do DynamoDB. Para ter mais informações, consulte [Java e DAX](DAX.client.run-application-java.md).
+ Escolha um nome diferente para a tabela de teste.
+ Modifique o número de itens gravados, alterando os parâmetros `helper.writeData`. O segundo parâmetro é o número de chaves de partição, e o terceiro parâmetro é o número de chaves de classificação. Por padrão, o programa usa 1–10 para valores de chave de partição e 1–10 para valores de chave de classificação, totalizando 100 itens gravados na tabela. Para ter mais informações, consulte [TryDaxHelper.java](DAX.client.run-application-java.TryDaxHelper.md).
+ Modifique o número de testes de `GetItem`, `Query` e `Scan` e modifique seus parâmetros.
+ Assinale como comentários as linhas contendo `helper.createTable` e `helper.deleteTable` (se não quiser criar e excluir a tabela de cada vez que executar o programa).

**nota**  
Para executar o programa, é possível configurar o Maven para usar o cliente do SDK for Java do DAX e o AWS SDK para Java como dependências. Para ter mais informações, consulte [Usar o cliente como dependência do Apache Maven](DAX.client.java-sdk-v1.md#DAXClient.Maven).   
Opcionalmente, você pode fazer download e incluir o cliente Java do DAX e o AWS SDK para Java em seu classpath. Consulte [Java e DAX](DAX.client.run-application-java.md) para obter um exemplo de configuração da variável `CLASSPATH`.

```
public class TryDax {

    public static void main(String[] args) throws Exception {

        TryDaxHelper helper = new TryDaxHelper();
        TryDaxTests tests = new TryDaxTests();

        DynamoDB ddbClient = helper.getDynamoDBClient();
        DynamoDB daxClient = null;
        if (args.length >= 1) {
            daxClient = helper.getDaxClient(args[0]);
        }

        String tableName = "TryDaxTable";

        System.out.println("Creating table...");
        helper.createTable(tableName, ddbClient);
        System.out.println("Populating table...");
        helper.writeData(tableName, ddbClient, 10, 10);

        DynamoDB testClient = null;
        if (daxClient != null) {
            testClient = daxClient;
        } else {
            testClient = ddbClient;
        }

        System.out.println("Running GetItem, Scan, and Query tests...");
        System.out.println("First iteration of each test will result in cache misses");
        System.out.println("Next iterations are cache hits\n");

        // GetItem
        tests.getItemTest(tableName, testClient, 1, 10, 5);

        // Query
        tests.queryTest(tableName, testClient, 5, 2, 9, 5);

        // Scan
        tests.scanTest(tableName, testClient, 5);

        helper.deleteTable(tableName, ddbClient);
    }

}
```