我正在尝试使用spring标准创建动态mongodb查询。我的疑问是:
Criteria.where(KEY1)。是(值1)。而(KEY2)。是(值2)
键/值的数量不固定,但可以更改。
我尝试使用andOperator,但这不适合我的情况。
有人可以帮助我吗?
答案 0 :(得分:5)
这篇文章解释了类似的问题: Spring Mongo criteria querying twice the same field
这是你想要做的:
Criteria criteria = new Criteria().andOperator(
Criteria.where("key1").is(value1),
Criteria.where("key2").is(value2));
// to print the mongodb query for debug purposes
// System.out.println(criteria.getCriteriaObject());
// execute with a mongoTemplate
List<YourClass> documents = mongoTemplate.find(new Query(criteria), YourClass.class);