如何在查询中使用Drools查询和继承

时间:2015-05-13 01:01:30

标签: java drools

我在工作记忆中有不同的配置事实。我需要使用drools查询来过滤掉与特定订单项相关的所有事实。

编辑:

我要做的是在主查询中传递一个类对象;

class Cart
{
 private List<A> aList;
private List<B> bList;
private List<C> cList;

//getter and setter
}

//查询

query "base" (Cart cart)
     Cart($lstA : aList, $lstB : bList, $lstC : cList)      from cart
     A( $code : code, $codeValue : codeValue)  from $lstA
     base1($code, $lstB )
     base2($codeValue, $lstC )
end

query "base1" (String code, List<B> $lstB)
         $lstB := ArrayList() from collect ( B( code == code))    
end

query "base2" (String codeValue, List<C> $lstC)
     $lstC := ArrayList() from collect ( C( codeValue == codeValue))
end
  1. 主要类别是购物车。
  2. 第一个查询是获取Cart类对象的参数。
  3. 第一个属性&#34; aList&#34;是具有A类对象列表的字段; A由代码和codeValue组成。
  4. 在代码和codeValue的基础上调用查询base1并在查询A中查询base2。
  5. 我也在发送bList,cList是空列表。我希望该值应该从base1和base2的查询结果初始化。
  6. 由于

0 个答案:

没有答案