

# Tipos de dados compatíveis com DynamoDBMapper para Java
<a name="DynamoDBMapper.DataTypes"></a>

Esta seção descreve os tipos de dados arbitrários, as coleções e os tipos de dados Java primitivos com aceitos no Amazon DynamoDB. 

O Amazon DynamoDB oferece suporte aos seguintes tipos de dados Java primitivos e classes wrapper primitivas. 
+ `String`
+ `Boolean`, `boolean`
+ `Byte`, `byte`
+ `Date` (como a string de precisão em milissegundos [ISO\$18601](http://en.wikipedia.org/wiki/ISO_8601), modificada para UTC)
+ `Calendar` (como a string de precisão em milissegundos [ISO\$18601](http://en.wikipedia.org/wiki/ISO_8601), modificada para UTC)
+ `Long`, `long`
+ `Integer`, `int`
+ `Double`, `double`
+ `Float`, `float`
+ `BigDecimal`
+ `BigInteger`

**nota**  
Para obter mais informações sobre as regras de nomenclatura do DynamoDB e os vários tipos de dados compatíveis, consulte [Tipos de dados compatíveis e regras de nomenclatura no Amazon DynamoDB](HowItWorks.NamingRulesDataTypes.md). 
O DynamoDBMapper oferece suporte a valores Binary vazios.
Valores String vazios são compatíveis com o AWS SDK for Java 2.x.  
No AWS SDK para Java 1.x, o DynamoDBMapper oferece suporte à leitura de valores de atributos String vazios. No entanto, ele não gravará valores de atributos String vazios porque esses atributos são descartados da solicitação.

O DynamoDB oferece suporte aos tipos de coleção Java [Set](http://docs.oracle.com/javase/6/docs/api/java/util/Set.html), [List](http://docs.oracle.com/javase/6/docs/api/java/util/List.html) e [Map](http://docs.oracle.com/javase/6/docs/api/java/util/Map.html). A tabela a seguir resume como esses tipos Java são mapeados nos tipos do DynamoDB.


****  

| Tipo Java | Tipo do DynamoDB | 
| --- | --- | 
|  Todos os tipos de número  |  `N` (tipo Número)  | 
|  Strings  |  `S` (tipo String)   | 
|  Booleano  |  `BOOL` (tipo booliano), 0 ou 1.  | 
|  ByteBuffer  |  `B` (tipo Binário)  | 
|  Data  |  `S` (tipo String). Os valores de Date são armazenados como strings formatadas em ISO-8601.  | 
| Tipos de coleção [Set](http://docs.oracle.com/javase/6/docs/api/java/util/Set.html) |  Tipo `SS` (conjunto de strings), tipo `NS` (conjunto de números) e tipo `BS` (conjunto de binários).  | 

 A interface `DynamoDBTypeConverter` permite que você mapeie seus próprios tipos de dados arbitrários em um tipo de dados com suporte nativo do DynamoDB. Para obter mais informações, consulte [Mapear dados arbitrários no DynamoDB](DynamoDBMapper.ArbitraryDataMapping.md). 