본문 바로가기
AWS DynamoDB

(AWS DynamoDB) CRUDRepository 설정하기 - 복합키 Entity

by Developer RyanKim 2018. 11. 6.



AWS DynamoDB CRUDRepository


이전 포스팅에서 AWS SDK for Java 설정과 테이블 설계을 완료 하셨다면 이제 실제로 DynamoDB를 Java를 사용하여 다루어 보겠습니다.


테이블 설계가 완료 되었다면 어떤 Entity를 사용할 지 정하셨겠죠?

대부분 PartitionKey 하나만을 사용하는 Entity가 아니라 

PartitionKey + SortKey 인 CompositeKey를 사용하실 것으로 생각합니다.


 


Entity 설정

 

Case : Single PrimaryKey 

 

PartitonKey 하나만을 사용하는 Entity의 설정은 간단합니다.

위와 같이 사용하는 Table 이름과 PK를 잘 설정해주고, 추가할 Attribute들을 정의한 후 

CrudRepository를 생성하면 DynamoDB에 기본 CRUD 명령을 내릴 수 있습니다.



기존 다른 DB들의 Repository 생성방법과 다른 부분은 @EnableScan Annotation을 사용한다는 것입니다.

basePackageClasses 부분을 생성한 Repository로 지정해주시면 됩니다.

 


 

Case : Composite PrimaryKey 


CompositeKey를 사용하는 Entity는 아래처럼 설정해주셔야 합니다.

 


코드를 보면, Key 부분을 하나의 Class로 만들어 그 Key Class의 멤버에 PK, SK가 존재하는 것을 볼 수 있습니다.

그리고 사용할 Entity Class가 그 키를 가지고, 조작하는 메서드를 가지도록 되어있습니다.

위처럼 설정한다면 CompositeKey를 사용하더라도 CrudRepository가 잘 동작할 것입니다.




이상으로 포스팅을 마칩니다.
다음에 더 좋은 내용으로 만나요~



By RyanKim (Overnodes Devloper)


댓글