Spring数据mongodb使用MongoTemplate从文档中删除属性

BiJ*_*BiJ 4 spring mongodb spring-data mongotemplate

我有一份文件如下所示

{
    "_id" : ObjectId("5864ddd8e38112fd70b89893"),
    "_class" : "com.apic.models.UserReg",
    "name" : "xxx",
    "email" : "xxx.xxx@xxx.com"
    "activationToken" : "fe8376ea2dbdf61ebc"
}
Run Code Online (Sandbox Code Playgroud)

如何activationToken使用Spring从中删除属性MongoTemplate

chr*_*dam 7

以下示例使用update修饰符activationToken从电子邮件中删除文档中的属性:xxx.xxx@xxx.com$unset

Query query = new Query();
query.addCriteria(Criteria.where("email").is("xxx.xxx@xxx.com"));
Update update = new Update();
update.unset("activationToken");

// run update operation
mongoTemplate.updateMulti(query, update, User.class);
Run Code Online (Sandbox Code Playgroud)