나는 사용자가 누구를 구독했는지 추적하기 위해 dynamodb에 Subscription 테이블을 설정하려고합니다. 데이브 스티브 구독 :어떻게 다이나모 맵 매퍼에 2 차 인덱스를 주석으로 추가합니까?
나는 2 문자열 속성, SubscriberID 및 사용자 ID와 구독에 대한 테이블이 때문에 같은 설정 (편의상 이름을 사용) 다음과 같습니다
[SubscriberID] ------ [UserID]
Dave ------ Steve
Dave ------ Josh
Dave ------ Cam
Cam ------ Dave
Cam ------ Justin
그래서
로 해석 될 수를 조쉬, 캠. Cam은 Dave와 Justin ..을 매우 간단하게 구독합니다.
사용자의 구독을 쿼리 할 수 있도록 구독 키 ID를 파티션 키로 사용하는 기본 키가 있습니다. 또한 사용자의 구독자를 쿼리 할 수 있도록 UserID가 파티션 키로있는 "getSubscribers"라는 보조 인덱스가 있습니다.
dynamodb 매퍼 개체를 저장할 때마다 내 구독 테이블에 표시되지 않지만 다른 기본 테이블의 기본 키가 1 개만있는 기본 테이블은 정상적으로 입력됩니다.
내 문제는 내 가입자 클래스 내 주석과 거의 확실 해요, 난이 제대로 설정이 얼마나 연구를 시도했다, 내가 생각 해낸 최선이
@DynamoDBTable(tableName = "starter-mobilehub-1604839252-Subscriptions ")
public class Subscription {
private String SubscriberID;
private String UserID;
@DynamoDBHashKey(attributeName = "SubscriberID")
public String getSubscriberID() {return SubscriberID;}
public void setSubscriberID(String UserID) {this.SubscriberID = UserID;}
@DynamoDBIndexHashKey(globalSecondaryIndexName = "getSubscribers", attributeName = "UserID")
public String getUserID() {return UserID;}
public void setUserID(String UserID) {this.UserID = UserID;}
}
나는 알고 있었다 아마 잘못되었을 것입니다. 누구나이 주석이 어떻게 올바르게 설정되어 있는지 알 수 있습니까? 어떤 도움이라도 굉장합니다.