如何解决DynamoDBTypeConverter无法正常工作
"test_field" : "x:x:x"
实体POJO具有:
@DynamoDBTypeConverted(converter = SingleFieldConverter.class)
@DynamoDBAttribute(attributeName = "test_field")
private SingleField singleField;
具有适当的getter和setter方法。 转换器类为:
public class SingleFieldConverter implements DynamoDBTypeConverter<String,SingleField> {
@Override
public String convert(SingleField singleField) {
// removed for clarity
}
@Override
public SingleField unconvert(String s) {
// removed for clarity
}
它有效!
但是当我将DynamoDB项更改为:
"test_field" : [
"x:x:x","x:x:x"
]
和我的POJO对象:
@DynamoDBTypeConverted(converter = SingleFieldConverter.class)
@DynamoDBAttribute(attributeName = "test_field")
private List<SingleField> singleField;
和转换器类如下:
public class SingleFieldConverter implements DynamoDBTypeConverter<String,List<SingleField>> {
@Override
public String convert(List<SingleField> singleField) {
// removed for clarity
}
@Override
public List<SingleField> unconvert(String s) {
// removed for clarity
}
}
它抛出:
DynamoDBMappingException
. . . . . [test_field]; Could not unconvert attribute
. . .Caused by: com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMappingException: expected S in value {L: [{S: x:x:x:,},{S: x:x:x:,}],}
我在网上发现的类似示例据称可以工作,但我的示例却没有。我想念什么,请帮忙?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。