我以下面的格式将数据存储在用户集合的mongoDB中
{
"_id" : ObjectId("571ded1a1b8bd2c34aaf3c4a"),
"_class" : "com.unisys.workbench.domain.User",
"userName" : "admin",
"password" : "admin",
"email" : "xyzq@gmail.com",
"contact1" : "9889482416",
"contact2" : "1234567890",
"roles" : [
{
"roleName" : "ROLE_ADMIN"
}
]
}
基于我在“查询”下面写的roleName的Restive数据
List<User> users= mongoTemplate.find(new Query().addCriteria(Criteria.where("roles.$roleName").is(role)),
User.class);
但它总是返回null。
对于下面的电子邮件,查询工作正常
mongoTemplate.findOne(new Query().addCriteria(Criteria.where("email").is(email)),
User.class);
答案 0 :(得分:0)
$ for是什么? 它应该是:
List<User> users= mongoTemplate.find(new Query().addCriteria(Criteria.where("roles.roleName").is(role)),
User.class);