如何从drools会话中检索事实?

时间:2014-07-03 06:51:53

标签: java drools

假设我有一个课程如下:

public class A {
    private int id1;  
    private int id2;  
    HashMap<String, String> attrMap;  
}  


StatefulKnowledgeSession session = knowledgeBase.newStatefulKnowledgeSession(); 
session.insert(a1);
session.insert(a2);
session.insert(a3);
session.insert(a4);  

现在如何从具有id1 = 2的会话中检索事实 我知道我可以使用getFactHandle(Object)检索事实,但在这里我想使用一个成员值检索事实。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

如果你想从你的ksession中获取这些事实,那么你可能想要使用查询。 有关详细信息,请在此处查看我的答案:Retrieving facts of a specific type from working memory

即使我在另一篇文章中的答案是关于为某个班级提取事实,也可以很容易地修改它来做你想要的事情。