2017-06-20 14 views
0

私はDynamoDBのマッパーのアノテーションを使用してDynamoDBのテーブルにカスタム定義されたクラスによってマッピングしようとしています:DynamoDBのマッパーマッピングコレクション・データ型

public class MyClass { 
    String string1; 
    List<String> stringList; 
    Boolean flag; 
    Map<String, String> map; 
} 

私はDDBマッパーは、限定されたデータ型をサポートしています知っています。 http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBMapper.DataTypes.html

このクラスはどのようにマップできますか?どのように私はリストとマップをマップすることができます上の任意のヘルプ。

答えて

2

DynamoDBマッパーは、Javaタイプに基づいて正しいDynamoDB データ型を自動的に解釈して割り当てます。

DDBデータ型を具体的に割り当てる場合は、DynamoDBTypedアノテーションを使用できます。

以下の例のブール値属性を参照してください。

import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAttribute; 
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey; 
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperFieldModel.DynamoDBAttributeType; 
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable; 
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTyped; 

@DynamoDBTable(tableName = "yourTableName") 
public class MyClass { 

    String string1; 
    List<String> stringList; 
    Boolean flag; 
    Map<String, String> map; 

    @DynamoDBHashKey(attributeName = "string1") 
    public String getString1() { 
     return string1; 
    } 

    public void setString1(String string1) { 
     this.string1 = string1; 
    } 

    @DynamoDBAttribute(attributeName = "stringList") 
    public List<String> getStringList() { 
     return stringList; 
    } 

    public void setStringList(List<String> stringList) { 
     this.stringList = stringList; 
    } 

    @DynamoDBTyped(DynamoDBAttributeType.BOOL) 
    public Boolean getFlag() { 
     return flag; 
    } 

    public void setFlag(Boolean flag) { 
     this.flag = flag; 
    } 

    @DynamoDBAttribute(attributeName = "map") 
    public Map<String, String> getMap() { 
     return map; 
    } 

    public void setMap(Map<String, String> map) { 
     this.map = map; 
    } 

} 
+0

おはようございます!ちょうどこれを理解していた..しかし、DynamoDBTypedに特別な感謝。また、(https://stackoverflow.com/questions/44656642/dynamodb-mapper-hashkey-on-non-member)これを見てくださいできます..事前に感謝!! – Arushi

+0

確かに、それが役に立ったら答えを受け入れることができますか? – notionquest