首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Drools可重用问题

Drools可重用问题
EN

Stack Overflow用户
提问于 2011-01-13 03:17:48
回答 1查看 1.2K关注 0票数 2

我目前正在评估JBoss Drools,并希望就我到目前为止发现的可重用性问题向社区寻求帮助:

  1. 要创建知识库,必须导入.drl文件/s,但如果我只想使用.drl文件中的规则子集,而不是组成规则组(使用日程组或RuleFlowGroup),那么还有其他方法吗?使用规则组可以很容易地使规则定义混乱,假设您有10个不同的规则子集,即10个规则组.
  2. 是否有方法动态地将事实插入规则知识中?在我看来,在触发规则引擎之前,需要在会话中插入所有所需的事实/数据,从而造成性能瓶颈。例如,如果其中一个事实驻留在数据库中,则除非从数据库中提取事实,否则无法启动引擎。如果引擎能够首先处理其他事实,并且当数据库中的事实准备就绪时,动态地将其插入会话中会更好。
EN

回答 1

Stack Overflow用户

发布于 2011-01-13 04:54:12

  1. 做这件事的好方法是使用议程组。另一种方法是,明智地将规则包分开。

  1. ,当我面对你的问题时,你可以使用事实句柄。

在这里使用StatefullKnowledgeSession

FactHandle objHandle = ksession.insert(事实);

然后,当您的事实从数据库中准备就绪后,您可以在当前运行的会话中修改事实。

代码语言:javascript
复制
ksession.update(objHandle, newFactObject(of same class))

有关更多细节,请访问http://downloads.jboss.com/drools/docs/5.1.1.34858.FINAL/drools-expert/html_single/index.html第2.1.2章。有状态知识会话。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4676472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档