【问题标题】:Spring mongo adding criteria to and operator dynamicalySpring mongo 动态添加条件和操作符
【发布时间】:2014-06-06 12:36:14
【问题描述】:

我正在尝试使用用户输入和操作创建动态查询 我的代码是 我创建了标准列表,例如:

List<Criteria> criterias = new ArrayList<Criteria>();

并将条件添加到此列表中。并且已成功添加。现在我想在每个条件之间进行操作。

 Criteria criteria = new Criteria().andOperator(criterias.get(0), criterias.get(1));

它工作正常但是我的输入不是固定的,所以我希望它应该动态添加, 我试过了

for(int i=0;i<criterias.size();i++)
  Criteria criteria = new Criteria().andOperator(criterias.get(i));

我在哪里失踪?

【问题讨论】:

  • 不太清楚你在这里做什么。您是否正在尝试向 $and 运算符添加条件列表?如果您显示您尝试动态构建的查询的 JSON 等效(或基本 shell 版本)可能会有所帮助。
  • @Neil Lunn 我正在尝试创建 $and 但我不能在同一字段上使用 andoperator 所以我需要添加类似 Criteria criteria = new Criteria().andOperator(criterias.get(0),标准.get(1));

标签: java spring mongodb spring-mongo


【解决方案1】:

通过“$and”运算符将条件列表中的所有条件联合起来:

Criteria criteria = new Criteria().andOperator(criterias.toArray(new Criteria[criterias.size()]));

这里是docs

【讨论】:

    猜你喜欢
    • 2014-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-26
    • 2021-11-03
    • 1970-01-01
    相关资源
    最近更新 更多