解决方案:
在需要保存的对象前边添加
@Entity(noClassnameStored = true)
即可
1、跟新集合中的数组bankCards,将满足查询条件的数组元素使用实例bankCards更新:
UpdateOperations<BankCard> updateOperations = this.updates().set("bankCards.$", bankCards);
int a = this.ds()
.update(
this.q().filter("memberId", new ObjectId(uid)).filter("bankCards.accountNo", bankCards.getAccountNo()),
updateOperations,
true
).getUpdatedCount();
System.out.println(a);
return null;
2、查看数据库中的集合时,发现被更新的元素多了一个className的键。
在要保存的实例的类上面加上如下注解,即可去掉className键:
@Entity(noClassnameStored = true)