簡體   English   中英

Amazon DynamoDB 映射枚舉

[英]Amazon DynamoDB mapping enums

我需要 map 用戶 class 用於 Amazon DynamoDB。 用戶 object 的屬性之一是 AccountType(枚舉)。 我該如何處理? 下面是我嘗試過的枚舉和代碼。

public enum AccountType {
    TYPE_A,
    TYPE_B
}

-

@DynamoDBAttribute(attributeName="AccountType")   *<< THIS FAILS*
public AccountType getAccountType() {
    return accountType;
}

任何幫助,將不勝感激。

AWS開發工具包支持特殊注釋DynamoDBTypeConvertedEnum,以將枚舉轉換為字符串。

@DynamoDBTypeConvertedEnum
@DynamoDBAttribute(attributeName="AccountType")
public AccountType getAccountType() {
    return accountType;
}

AWS SDK for Java提供的Amazon DynamoDB的高級API( 對象持久性模型 )尚不支持enum ,請參閱支持的數據類型

Amazon DynamoDB支持以下原始數據類型和原始包裝類。

  • 布爾值,布爾值
  • 字節,字節
  • 日期(作為ISO8601毫秒精度字符串,轉換為UTC)
  • 日歷(作為ISO8601毫秒精度字符串,轉換為UTC)
  • 很久很久
  • 整數,整數
  • 雙人,雙人
  • 漂浮,漂浮
  • BigDecimal的
  • 的BigInteger

但是, Amazon DynamoDB原則上支持任意數據類型 ,因此您可以解決該限制,請參閱使用AWS SDK for Java對象持久性模型將任意數據映射到Amazon DynamoDB以獲取詳細信息:

除了支持的Java類型[...]之外,您還可以在應用程序中使用沒有直接映射到Amazon DynamoDB類型的類型。 要映射這些類型,必須提供將復雜類型轉換為String實例的實現,反之亦然,並使用@DynamoDBMarshalling批注類型注釋復雜類型訪問器方法。 [...]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM