我在mongo模板中定义了我的匹配操作,如下所示。
MatchOperation match = Aggregation.match(new Criteria("workflow_stage_current_assignee").ne(null)
.andOperator(new Criteria("CreatedDate").gte(new Date(fromDate.getTimeInMillis()))
.andOperator(new Criteria("CreatedDate").lte(new Date(toDate.getTimeInMillis())))));
在此之前一切都很好。但是我无法使用我创建的引用match
修改此匹配操作。我正在寻找List类型的功能,我可以在已经创建的引用需要时添加多个条件子句。行match.add(new Criteria)
但是MatchOperation
目前不支持任何提供此功能的方法。在这方面的任何帮助将不胜感激。
答案 0 :(得分:0)
Criteria
是您添加新条件的位置,由列表支持。
使用静态Criteria where(String key)
方法创建初始化条件对象。
像
这样的东西Criteria criteria = where("key1").is("value1");
添加更多条件
criteria.and("key2").is("value2");
创建隐式$and
条件并链接到现有条件链。
criteria.and(where("key3).gt(value3).lte(value4))
完成后,只需将其传递给匹配操作。
MatchOperation match = Aggregation.match(criteria);