【问题标题】:How to add conditions in a ebean query?如何在 ebean 查询中添加条件?
【发布时间】:2017-03-06 15:23:43
【问题描述】:

我有一个关于我的模型的查询,我正在按模型的属性、Id、Title 等进行过滤。但是,如何将所有条件包装到 or 中,我查看了 disjunction 但我没有找到仅在有值时添加条件的方法。

  Query<Ticket> query = Ebean.find(Ticket.class);

            if(filter.getId() != null){
                 query.where().eq("id", filter.getId());
            }

            if(StringUtils.isNotBlank(filter.getTitle())){
                query.where().icontains("title",filter.getTitle());
            }

            return query.findList();

【问题讨论】:

    标签: java orm ebean


    【解决方案1】:

    查看google group,我刚刚找到了解决方案:

       Junction<Ticket> filters = Ebean.find(Ticket.class).where().disjunction();
    
        if(filter.getId() != null){
          filters.add(Expr.eq("id", filter.getId()));
        }
        return filters.endJunction().findList();
    

    disjunction 返回一个连接列表,然后我检查该值并在列表中添加一个 Expr。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-22
      • 2019-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多