Erstellen Sie einen erweiterten Client und DynamoDbTable - AWS SDK for Java 2.x

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie einen erweiterten Client und DynamoDbTable

Erstellen Sie einen erweiterten Client

Die DynamoDbEnhancedClientKlasse oder ihr asynchrones Gegenstück, DynamoDbEnhancedAsyncClient, ist der Einstiegspunkt für die Arbeit mit der DynamoDB Enhanced Client API.

Der erweiterte Client benötigt einen Standard, um die Arbeit ausführen DynamoDbClient zu können. Die API bietet zwei Möglichkeiten, eine DynamoDbEnhancedClient Instanz zu erstellen. Die erste Option, die im folgenden Ausschnitt gezeigt wird, erstellt einen Standard DynamoDbClient mit Standardeinstellungen, die aus den Konfigurationseinstellungen übernommen wurden.

DynamoDbEnhancedClient enhancedClient = DynamoDbEnhancedClient.create();

Wenn Sie den zugrunde liegenden Standardclient konfigurieren möchten, können Sie ihn der Builder-Methode des erweiterten Clients zur Verfügung stellen, wie im folgenden Codeausschnitt gezeigt.

// Configure an instance of the standard DynamoDbClient. DynamoDbClient standardClient = DynamoDbClient.builder() .region(Region.US_EAST_1) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); // Use the configured standard client with the enhanced client. DynamoDbEnhancedClient enhancedClient = DynamoDbEnhancedClient.builder() .dynamoDbClient(standardClient) .build();

Erstellen einer DynamoDbTable-Instance

Stellen Sie sich a DynamoDbTableals die clientseitige Darstellung einer DynamoDB-Tabelle vor, die die von a bereitgestellte Zuordnungsfunktion verwendet. TableSchema Die DynamoDbTable Klasse stellt Methoden für CRUD-Operationen bereit, mit denen Sie mit einer einzelnen DynamoDB-Tabelle interagieren können.

DynamoDbTable<T>ist eine generische Klasse, die ein einzelnes Typargument akzeptiert, unabhängig davon, ob es sich um eine benutzerdefinierte Klasse handelt oder um eine, EnhancedDocument wenn mit dokumentartigen Elementen gearbeitet wird. Dieser Argumenttyp stellt die Beziehung zwischen der Klasse, die Sie verwenden, und der einzelnen DynamoDB-Tabelle her.

Verwenden Sie die table() Factory-Methode vonDynamoDbEnhancedClient, um eine DynamoDbTable Instanz zu erstellen, wie im folgenden Codeausschnitt gezeigt.

static final DynamoDbTable<Customer> customerTable = enhancedClient.table("Customer", TableSchema.fromBean(Customer.class));

DynamoDbTableInstanzen sind Kandidaten für Singletons, da sie unveränderlich sind und in Ihrer gesamten Anwendung verwendet werden können.

Ihr Code hat jetzt eine speicherinterne Darstellung einer DynamoDB-Tabelle, die mit Instanzen arbeiten kann. Customer Die tatsächliche DynamoDB-Tabelle ist möglicherweise vorhanden oder nicht. Wenn die angegebene Tabelle Customer bereits existiert, können Sie damit beginnen, CRUD-Operationen an ihr durchzuführen. Wenn sie nicht existiert, verwenden Sie die DynamoDbTable Instanz, um die Tabelle zu erstellen, wie im nächsten Abschnitt beschrieben.