Utilizar características de asignación avanzadas - AWS SDK for Java 2.x

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Utilizar características de asignación avanzadas

Obtenga información sobre las características avanzadas del esquema de tablas en la API del cliente mejorado de DynamoDB.

Comprender los tipos de esquema de tabla

TableSchema es la interfaz para la funcionalidad de asignación de la API del cliente mejorado de DynamoDB. Puede mapear un objeto de datos hacia y desde un mapa de AttributeValues. Un objeto TableSchema necesita conocer la estructura de la tabla que está asignando. Esta información de estructura se almacena en un objeto TableMetadata.

La API del cliente mejorado tiene varias implementaciones de TableSchema, indicadas a continuación.

Esquema de tabla generado a partir de clases anotadas

Es una operación algo costosa construir un TableSchema a partir de clases anotadas, por lo que recomendamos hacerlo una vez, al inicio de la aplicación.

BeanTableSchema

Esta implementación se construye basándose en atributos y anotaciones de una clase de bean. En la sección Introducción se muestra un ejemplo de este enfoque.

nota

Si un BeanTableSchema no se comporta como espera, active el registro de depuración para software.amazon.awssdk.enhanced.dynamodb.beans.

ImmutableTableSchema

Esta implementación se crea a partir de una clase de datos inmutable. Esto se describe en la sección Trabajar con clases de datos inmutables anterior.

Esquema de tabla generado con un generador

Los siguientes TableSchema se crean a partir de código mediante un generador. Este enfoque es menos costoso que el enfoque que usa clases de datos anotadas. El enfoque de creación evita el uso de anotaciones y no requiere estándares de JavaBean nomenclatura.

StaticTableSchema

Esta implementación está creada para clases de datos mutables. En la sección de introducción de esta guía se muestra cómo crear un StaticTableSchema mediante un generador.

StaticImmutableTableSchema

De forma similar a como se crea un StaticTableSchema, se genera una implementación de este tipo de TableSchema utilizando un generador para su uso con clases de datos inmutables.

Esquema de tabla para datos sin un esquema fijo

DocumentTableSchema

A diferencia de otras implementaciones de TableSchema, no define los atributos de una instancia DocumentTableSchema. Por lo general, solo especifica las claves principales y los proveedores de convertidores de atributos. Una instancia EnhancedDocument proporciona los atributos que se crean a partir de elementos individuales o de una cadena JSON.