Drools学习教程-1.规则文件语法

Posted lonecloud

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Drools学习教程-1.规则文件语法相关的知识,希望对你有一定的参考价值。

规则文件内容

关键词

关键字 描述
package 包名,逻辑上的管理,在进行Kbase加载的时候可以使用到
import 规则引用问题,导入类或者方法
global 全局变量,使用时候需要单独定义变量类型
function 自定义函数
queries 查询
rule 规则开始,参数是规则的唯一名称
rule 规则属性,是rule与when之间的一些参数,为可选项
when 规则条件部分,默认为true
then 规则的结果部分
end 规则结束

绑定变量

由于在规则运行时可能需要绑定一些变量,而如果传递多个对象时候,如何进行一一绑定呢?那么该功能就出现了

rule "pattern-demo"
    when
      /**表示要符合才会执行**/
      $p1:Person(name=="小米") $p2:Person(name=="小明")
    then
       System.out.println($p1);
       System.out.println($p2);
end

语法: [绑定变量名:Object(Field约束)]

上面的说明:将Person中名字为小米的赋值给$p1变量

逻辑计算

  • 逻辑计算 :+ - * /
  • 取余计算注意需要使用括号包裹:%
  • contains |not contains :是否包含
  • memberOf |not memberOf 是否为某个集合中的一员
  • matches |not matches 正则匹配

注释

  • 单行注释 //
  • 多行注释 /***/

以上是关于Drools学习教程-1.规则文件语法的主要内容,如果未能解决你的问题,请参考以下文章

Drools 规则引擎环境搭建

[Drools]JAVA规则引擎 -- Drools

JAVA规则引擎 -- Drools

Drools 规则引擎一文读懂

Java规则引擎Drools急速入门

规则引擎Drools介绍使用及SpringBoot整合Drools