通过不同类的两种方法在Dynamodb中添加项目

时间:2019-03-27 12:30:44

标签: java spring spring-boot java-8 amazon-dynamodb

以前的逻辑很简单,一种方法提供了dynamodb db持久化方法插入表中的对象。但是现在尝试添加具有两个不同类的相同项目映射。

@Override
public void persist(Object1 object1) {
    try {

        Map<String, AttributeValue> item = new HashMap<>();

        item.put(DynamoDBField.Fields.FIELD_ID, new AttributeValue().withN(String.valueOf(object1.getId())));
        item.put(DynamoDBField.Fields.STATUS, new AttributeValue().withS(String.valueOf(object1.getStatus())));

        amazonDynamoDBGateway.put(getTableName(), item);

    } catch (DynamoDatabaseException e) {
        throw new DynamoDatabaseException(e, PersistenceErrorType.DB_COMMIT_FAILED);
    }
}

此persist方法调用其他类,如下所示:

public void onCreate(Object1 object1){
    updateDynamoRepository.persist(object1);

}

现在可以说我添加了另一个创建Object2的类:

public class ClassForObject2{
 private Object2 object2= new Object2("my object2");

}

我想知道如何在方法object2中添加persist,因此它与object1一起也可以并行添加object2

最终在发电机中应该像:

|field_id|status|field_from_object2|
+--------+------+------------------+
| 123    | ON   |   my object 2    |

在此我将不胜感激,我看过价值传递但没有成功。

0 个答案:

没有答案