有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在DynamoDB中以历元格式自动填充时间

我对DynamoDB还很陌生。当我使用JAVA应用程序保存记录时,我试图在大纪元时间自动填充createdTimeStamp。 到目前为止,我还没有找到解决办法。 我只能找到如何将时间戳自动填充为字符串:Auto populate timestamp in DynamoDB

@DynamoDBAutoGeneratedTimestamp(strategy=DynamoDBAutoGenerateStrategy.CREATE)
public Date getCreatedDate() { return createdDate; }
public void setCreatedDate(Date createdDate) { this.createdDate = createdDate; }

@DynamoDBAutoGeneratedTimestamp(strategy=DynamoDBAutoGenerateStrategy.ALWAYS)
public Date getLastUpdatedDate() { return lastUpdatedDate; }
public void setLastUpdatedDate(Date lastUpdatedDate) { this.lastUpdatedDate = lastUpdatedDate; }

请帮助我们如何将时间保存为数字(即以毫秒为单位的历元时间。例如:1516169930709)


共 (1) 个答案

  1. # 1 楼答案

    看看source code,看起来您应该可以使用Long属性:

    @DynamoDBAutoGeneratedTimestamp(strategy=DynamoDBAutoGenerateStrategy.ALWAYS)
    public Long getLastUpdatedDate() { ... }
    public void setLastUpdatedDate(Long value) { ... }
    

    注意,根据注释,它必须是Long而不是long

    Primitives such as long are not supported since the unset (or null) state can't be detected.