6

我正在用 Java 开发一个项目,并且正在使用 AWS 开发工具包。我正在使用 Dynamo DB。我正在使用映射器,它对我非常有用,因为我可以直接在 java 实体上执行基本操作。

最近,我看到了允许向 Dyanamo DB 添加事务性的库:https ://github.com/awslabs/dynamodb-transactions

这样的库工作得很好,但它不允许我使用映射器。它仅适用于 GetRequest、PutRequest、...

获取结果时我没有问题,因为我可以使用“marshallIntoObject(Class, Map)”方法从查询结果中获取 java 实体。

如何执行相同的操作来保存/更新项目?我真的很想有一个方法来输入一个java实体并将其转换为一个Map。我将使用返回的地图通过事务引擎执行查询。它在某处可用吗?

此外,是否有计划让“dynamodb-transactions”项目能够支持映射器?

谢谢

4

3 回答 3

10

对此进行跟进:链接的功能请求现已实施

DynamoDB 事务库现在支持使用 DynamoDB 映射器。查看示例和 javadocs 以开始使用它,如果您有任何问题,请随时在 github 项目中提出问题。

于 2014-04-22T16:12:04.343 回答
0

您可以先查看 DynamoDB 在保存之前如何解析对象。您可以在 GitHub 上查看DynamoDBMapper代码。您应该SaveObjectHandler在函数中寻找受保护的类实现save

问题/功能请求应记录在 GitHub 上项目的问题部分(已经有一个用于支持 DynamoDBMapper)或在AWS DynamoDB 论坛中讨论

于 2013-10-15T12:43:59.453 回答
0

仅供参考 - AWS 推出了对内置事务 API 库的 DynamoDBMapper 支持(在 re:Invent 2018 上推出):https ://aws.amazon.com/about-aws/whats-new/2019/04/dynamodbmapper-now-supports -amazon-dynamodb-transactional-api-calls/

于 2019-04-30T18:49:33.043 回答