计算机系统应用教程网站

网站首页 > 技术文章 正文

34-drools入门案例(小结_相关概念说明)

btikc 2024-11-16 17:20:24 技术文章 1 ℃ 0 评论

接下来我们来看一下相关概念说明。刚才在规则引擎构成当中其实有一些概念已经提到过了,但是因为这些概念是非常重要的,所以在这有必要再来重复一遍,让大家加深印象。因为后边在应用当中经常会用到这些东西。

·第一个叫做working memory,已经强调过了,这个叫做工作内存。working memory规则引擎会从working memory工作内存中来获取数据,并和规则文件中定义的这些规则是不是来进行模式匹配?所以在开发的应用只需要将数据插入到工作内存中就可以了。

比如入门案例里边是不是通过调用了一个kienice的音色的方法把out对象插入到了工作内存里面去了?这是第一个概念,需要把数据插入到工作内存里面去。规则引擎在运行的时候会自动的到工作内存里面来取这些对象。而这些对象叫什么?统一的称为叫做fact。

fact字面翻译过来就是事实对象,它是指在derous 规则应用过程当中将一个普通的alt对象插入到工作内存后的对象就是fact对象。例如案例当中的out对象因为它插入到了工作内存里面去了,所以就把它称为fact对象。所以要注意只有插入到工作内存里面的这一类的对象才称为的对象。

如果只是普通new了一个alt对象并没有插入到工作内存里面去,那它是不能成为fact对象的。而fact对象是应用和规则引擎进行数据交互的桥梁或者是通道。

比如再结合案例来看一下,比如在这个地方通过section点音色把out对象插入到工作内存里面去了,这个时候可以把它称为就是fact对象。插进去之后在这个地方是不是就可以进行模式匹配?匹配到之后是不是就可以通过dollar的这种方式来引用到这个对象?而这个对象其实就是这个地方自己拗的对象。

同时在这个地方是不是对real price进行了设置?设置完之后在应用程序里边是不是就可以通过out点get price,real price就可以取到它的值。也就是fact对象起的作用就是应用程序和规则引擎进行数据交互的桥梁或者通道,这个是非常重要的。

·第二个fact,第三个叫做如勒贝斯,前面其实也提到过了,这个叫做规则库。编写的规则文章文件中定义的这些规则最终都会被加载到规则库中来进行使用。这是规则库。

·再往下是不是就是匹配器?匹配器的作用就是将规则库中所有的规则与工作内存中这些fact对象进行模式匹配。匹配成功之后这些规则是不是将被激活,然后放入到真的就是异成当中,下边就是异成,用于存放匹配成功的这些规则。

·最后就是执行引擎,是不是就是来执行这些真的就是异成当中被激活的这些规则。

这些概念刚才其实都已经提到过了,在这再统一再来说一下。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表