gpt4 book ai didi

java - DynamoDb 正在存储值 1 而不是 boolean 值 true

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:48:27 31 4
gpt4 key购买 nike

我有一个方法,它只是为特定记录存储标志值 true。我的标志属性已定义为 boolean 值,在我的 DynamoDB 数据库中具有值 true/false。在运行此方法时,它不是以某种方式存储真值,而是为标志属性插入一个新列作为数字数据类型,并写入值 1 而不是 true。在调试时我可以看到它读取的值是“真”,但在写我的猜测时它用 1 表示真,用 0 表示假,因此写 1。

public static ArrayList<UserWishListBuks> removeNotification(int Statusid) {
AmazonDynamoDBClient ddb = NavigationDrawerActivity.clientManager
.ddb();
DynamoDBMapper mapper = new DynamoDBMapper(ddb);
DynamoDBScanExpression scanExpression = new DynamoDBScanExpression();
Boolean value = true;
try{
PaginatedScanList<UserWishListBuks> result = mapper.scan(
UserWishListBuks.class, scanExpression);
for (UserWishListBuks bre : result) {
if( (bre.getBOOK_STATUS_ID()==(Statusid)) )
{
bre.setNOTIFICATION_FLAG(true);
mapper.save(bre);
}
}
}catch (AmazonServiceException ex) {
NavigationDrawerActivity.clientManager
.wipeCredentialsOnAuthError(ex);
}
return null;
}

最佳答案

DynamoDb 默认将 boolean 值存储为 0 或 1。

使用以下装饰器将属性分别保存为 falsetrue

@DynamoDBTyped(DynamoDBAttributeType.BOOL)
@DynamoDBAttribute
private boolean notificationFlag;

注意:用于执行此操作的@DynamoDBNativeBooleandeprecated

关于java - DynamoDb 正在存储值 1 而不是 boolean 值 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47446171/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com