2013-08-14 3 views
1

Java와 함께 AWS SDK에서 제공하는 매퍼를 사용하고 있습니다. DynamoDB에서 레코드를 업데이트해야합니다. 매퍼를 사용하여 매핑 된 엔터티의 Null 속성이 DynamoDB에 저장되어 이전 값을 덮어 쓰지 않도록하는 방법이 있습니까?DynamoDB 매퍼 : null이 아닌 속성 만 업데이트하십시오.

예를 통해 제 질문을 설명하려고합니다. id, a, b의 세 가지 속성이있는 Java 엔터티가 있습니다. 필드 ID에 hashKey 만있는 DynamoDB 테이블에 매핑됩니다. DynamoDB에는 레코드 "id": "1", "a": "aa"}가 저장됩니다. id : 1, a : null 및 b : "bb"인 엔티티에서 호출 된 업데이트 후에 DynamoDB에서 레코드 "id": "1", "b": "bb"}를 찾습니다.

모든 솔루션? 당신은 새로운 SaveBehavior 전략에 관심이있을 것입니다

감사

답변

5

는 최근 v1.5.4에 소개했다. 새로운 SaveBehavior 전략은 UPDATE_SKIP_NULL_ATTRIBUTES입니다. 이 새로운 SaveBehavior은 기존의 UPDATE 전략과 매우 유사합니다. 유일한 차이점은 null 값과 함께 전송 된 모든 속성은 DynamoDB의 항목에서 제거되지 않는다는 것입니다. Here은 JavaDoc에 대한 링크입니다.

+0

Perfect! 감사! – Ulisse

관련 문제