【问题标题】:Query builder with MongoClient in Micronaut applicationMicronaut 应用程序中使用 MongoClient 的查询构建器
【发布时间】:2020-11-02 13:09:57
【问题描述】:

我将 MongoClient 与 micronaut MongoDb 一起使用。尝试执行查询运算符以在 mongoDb 中创建查询。

public static Bson QueryBuilder(ProductSearchCriteria productSearchCriteria){
        Bson query = null;
        if (productSearchCriteria.getName() != null){
         query = Filters.eq("name", productSearchCriteria.getName());
        }
        if(productSearchCriteria.getDescription() != null){
            query = Filters.eq("description", productSearchCriteria.getDescription());
        }
        return query;
    }

现在如何在一个查询中执行逻辑 AND/ OR / NOT / NOR 和其他运算符

【问题讨论】:

    标签: java mongodb-query micronaut micronaut-data


    【解决方案1】:

    我是这样做的,不知道是不是正确的方法

    public static List<Bson> QueryBuilder(ProductSearchCriteria productSearchCriteria){
            List<Bson> filters = new ArrayList<>();
            final BeanIntrospection<Product> introspection = BeanIntrospection.getIntrospection(Product.class);
            var product = introspection.getPropertyNames();
    
            if (productSearchCriteria.getName() != null){
                filters.add(Filters.eq(product[0], productSearchCriteria.getName()));
            }
            if(productSearchCriteria.getDescription() != null){
                filters.add(Filters.eq(product[2], productSearchCriteria.getDescription()));
            }
            return filters;
        }
    

    【讨论】:

      猜你喜欢
      • 2020-09-18
      • 1970-01-01
      • 1970-01-01
      • 2020-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-23
      • 2021-09-03
      相关资源
      最近更新 更多