@Retention(value=RUNTIME) @Target(value={FIELD,METHOD}) public @interface DynamoDBAttribute
 This annotation is optional when the name of the DynamoDB attribute matches
 the name of the property declared in the class. When they differ, use this
 annotation with the attributeName() parameter to specify which DynamoDB
 attribute this property corresponds to. Furthermore, the
 DynamoDBMapper class assumes Java naming conventions, and will
 lower-case the first character of a getter method's property name to
 determine the name of the property. E.g., a method getValue() will map to the
 DynamoDB attribute "value". Similarly, a method isValid() maps to the
 DynamoDB attribute "valid".
 
 Getter methods not marked with this annotation are assumed to be modeled
 properties, unless marked with DynamoDBIgnore.
| Modifier and Type | Optional Element and Description | 
|---|---|
| String | attributeNameOptional parameter when the name of the attribute as stored in DynamoDB
 should differ from the name used by the getter / setter. | 
| String | mappedByOptional parameter when using  DynamoDBFlattened; identifies
 the field/property name on the target class to map as the attribute. | 
public abstract String attributeName
public abstract String mappedBy
DynamoDBFlattened; identifies
 the field/property name on the target class to map as the attribute.DynamoDBFlattened