Amazon dynamodb DynamoDB-指定两个索引名@DynamoDbIndexHashkey globalSecondaryIndexName

Amazon dynamodb DynamoDB-指定两个索引名@DynamoDbIndexHashkey globalSecondaryIndexName,amazon-dynamodb,aws-sdk,Amazon Dynamodb,Aws Sdk,我有一个DynamoDB表,其中两个gsi具有相同的散列键,但不同的范围键。我不知道如何在@dynamodbindeuthskey属性中表示2个索引名(globalSecondaryIndexName)- Table entityid<br/> placeid<br/> starttime<br/> endtime<br/> GSI 1 - hashkey : placeid, rangekey : starttime<br/> GS

我有一个DynamoDB表,其中两个gsi具有相同的散列键,但不同的范围键。我不知道如何在
@dynamodbindeuthskey
属性中表示2个索引名(globalSecondaryIndexName)-

Table
entityid<br/>
placeid<br/>
starttime<br/>
endtime<br/>

GSI 1 - hashkey : placeid, rangekey : starttime<br/>
GSI 2 - hashkey : placeid, rangekey : endtime

@DynamoDBIndexHashKey( attributeName = "placeid" globalSecondaryIndexName= "placeid-starttime-index" )<br>
private String placeid;
表格
entityid
placeid
开始时间
结束时间
GSI 1-hashkey:placeid,rangekey:starttime
GSI 2-hashkey:placeid,rangekey:endtime @DynamoDBIndexHashKey(attributeName=“placeid”globalSecondaryIndexName=“placeid开始时间索引”)
私有字符串placeid;

如何在此处指定第二个索引名?

@dynamodBindeThashKey注释还为索引名使用一个数组

查看下面的链接以获取文档


您必须在字符串数组globalSecondaryIndexNames中指定索引名称:

@DynamoDBIndexHashKey( attributeName = "placeid" globalSecondaryIndexNames={  "placeid-starttime-index","placeid-endtime-index"} )
private String placeid;

DynamoDBIndexHashKey注释接受单个字符串值和数组作为其参数的索引名

**globalSecondaryIndexName** - Receives a String as index name. **globalSecondaryIndexNames** -Receives an array of index names. **globalSecondaryIndexName**-接收字符串作为索引名。 **globalSecondaryIndexNames**-接收索引名数组。 因此,您可以设置多个索引名,如下所示:

@DynamoDBIndexHashKey(attributeName = "placeid" globalSecondaryIndexNames={"placeid-starttime-index", "placeid-endtime-index"}) private String placeid; @DynamoDBIndexHashKey(attributeName=“placeid”globalSecondaryIndexNames={“placeid开始时间索引”、“placeid结束时间索引”}) 私有字符串placeid;