【问题标题】:Spring-boot - save ArrayList in dynamodb using crudrepositorySpring-boot - 使用 crudrepository 在 dynamodb 中保存 ArrayList
【发布时间】:2018-03-13 13:48:09
【问题描述】:

我在本地环境中使用Dynamodbspring-boot。当我尝试使用repository.save() 保存对象列表时,存储库类型扩展CrudRepository 接口,我得到以下异常:

com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMappingException: 类 class java.util.ArrayList 必须用接口注解 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable

难道不能像在 MongoRepository 中那样使用 CrudRepository 来保存对象列表吗?我们可以保存对象列表。

【问题讨论】:

    标签: spring-boot amazon-dynamodb


    【解决方案1】:

    可能不是,因为 List 可能包含重复的记录,而 DynamoDB 需要唯一的记录集。请使用 Set 而不是 List 那么它应该可以工作。请在您的数据库模型对象上使用以下注释 -

    @DynamoDBTyped(DynamoDBAttributeType.L)
    private Set<MyObject> myObjSet = new HashSet<>(); 
    

    还可以在 MyObject.java 的类级别使用 @DynamoDBDocument 注释。 那么它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-04
      • 2016-07-01
      • 1970-01-01
      • 2017-11-17
      • 1970-01-01
      • 2017-10-01
      • 2016-02-12
      • 1970-01-01
      相关资源
      最近更新 更多