在AWS Dynamodb的Spring启动应用程序中使用Jdbctemplate

时间:2017-05-05 16:06:06

标签: spring-boot spring-data amazon-dynamodb

我正在构建一个指向AWS dynamodb的spring boot微服务以进行数据库操作。我正在使用下面的库进行交互:因为这样的操作与CrudRepository一起正常工作,但是它对于大规模操作来说非常慢。对于dynamodb,我们是否有像jdbcTemplate.batchUpdate()这样的选项?

    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-core</artifactId>
    </dependency>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-dynamodb</artifactId>
    </dependency>
    <dependency>
        <groupId>com.github.derjust</groupId>
        <artifactId>spring-data-dynamodb</artifactId>
        <version>4.5.0</version>
    </dependency>

1 个答案:

答案 0 :(得分:0)

batchSave上的spring-data-dynamodb使用AWS SDK DynamoDBMapper batchSave,它不会更新现有项目。

DynamoDBMapper.batchSave在内部调用AmazonDynamoDB.batchWriteItem(),它不支持更新现有项目。

DynamoDBMapper batchSave: -

  

将使用一个或多个调用给出的对象保存到   AmazonDynamoDB.batchWriteItem(BatchWriteItemRequest)API。没有版本   根据API的要求执行检查。

     

此方法忽略映射器上设置的任何SaveBehavior,并且始终   表现得就像指定了SaveBehavior.CLOBBER一样   AmazonDynamoDB.batchWriteItem()请求不支持更新   现有项目。