java - spring中如何在mongoDB中查询和过滤

标签 java spring mongodb spring-boot

我想通过字符串数组标签搜索我的食谱 并想按标签过滤

我就知道会这样

db.Recipe.find({$and:[{tags:"沙漠"},{tags:"低脂"}]}).pretty()

但是我不知道如何在java spring中编写查询才能灵活 灵活意味着过滤选项的数量可以变化

最佳答案

Autowiring MongoTemplate

@Autowired
MongoTemplate mongoTemplate;

然后在 andOperator()

中使用您的过滤器
public void somemethod(){
    Query query=Query.query( new Criteria().andOperator(
        Criteria.where("tags").is("Desert"),
        Criteria.where("anotherFilter").is("answer"),
        // write more filter
        )
    );

    List<Recipe> =mongoTemplate.find(query,Recipe.class);
    // do your stuffs
}

关于java - spring中如何在mongoDB中查询和过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61957310/

相关文章:

java - 使用 DI 时, Play 2.4 在第一次请求时花费更多时间

java - Hibernate - 将 java.util.Calendar 映射到 MySQL BIGINT

spring - 与 Spring 相比,Enterprise Java Beans 仍然有用吗?

java - 如何为 Async Spring 使用多个 threadPoolExecutor

mongodb - 在 Mongo 中存储嵌套类别(或分层数据)的最有效方法?

ruby - Mongoid 给出未初始化的常量 Mongo

java - 如何在 Java 类应用程序中添加另存为对话框

java - Hibernate 5.2.10 DDL 自动更新到 AWS RDS (MySql 5.6.10a) 创建 TINYBLOB for Instant

java - Spring @ResponseBody 注释是如何工作的?

php - 如何在管理类中将函数作为参数传递