English 中文(简体)
在《德勒斯规则》中,如何使用两种不同的ArrayList物体,即第1条使用obj1,第2条使用肥胖2?
原标题:In Drools Rules, how to use two different ArrayList objects,obj1 is used in rule 1 and obj2 used in rule2?
  • 时间:2009-10-23 18:18:45
  •  标签:

我正在做session事。 在此之前,我不得不在Ddrl档案中发射第1条规则,然后在弹dr中发射。

能够告诉我如何做到这一点。 我读了议程过滤器和事实处理器,但没有真正知道如何做到这一点。

以下是一些法典:

ArrayList list = new ArrayList(); list.add(product1); list.add(product2); list.add(product3);

ksession.insert(list);
ksession.fireAllRules("fire rule 1 in drl");

/删除名单?

ArrayList list2 = new ArrayList(); list2.add(str1); list2.add(str2); list2.add(str3);

ksession.insert(list2); ksession.fireAllRules("fire rule 2 in drl");

问题回答

我认为,工作较好......青年能够控制模式匹配。

这里简单快捷

arrayList1.add("Rule 1");//if you can afford this without generics
arrayList1.add(...);//everything else you want to add
arrayList2.add("Rule 2");
arrayList2.add(..);//rest...

..
ksession.insert(..) ;//insert everything one by one

.. in your drl and inside Rule 1 ..when you want Rule 1 to work with arraylist1, have this matching first in the lhs $al:ArrayList(this contains "Rule 1")

这一切都是如此。

你们不会直接控制火灾规则——规则的限制决定了这一点。 只有当你停止发射规则时,才可以提供帮助。





相关问题
热门标签