使用Spring-Data-Mongo如何限制搜索?
我想找到19岁以上但50岁以下的人?该领域被称为“年龄”。以下代码无效
public void countUnderAge()
{
List<Person> results = null;
Query query = new Query();
Criteria criteria = new Criteria();
criteria = criteria.lte("21");
query.addCriteria(criteria);
results = mongoTemplate.find(query, Person.class);
logger.info("Total number of under age in database: {}", results.size());
}
答案 0 :(得分:0)
使用此:
Query query= new Query();
query.addCriteria(where("age").lte(21));
List<Person> results = mongoTemplate.find(query, Person.class);
您缺少where子句的字段名称。 你也可以这样做:
Query query = new Query();
Criteria criteria = new Criteria();
criteria = where("age").lte("21");
query.addCriteria(criteria);
要使用“where”,您需要添加此导入:
import static org.springframework.data.mongodb.core.query.Criteria.where;