规则引擎ILOG JRULES 开发基础教程5

       

        图中的”导航”就是gertter方法   “操作”就是setter方法。

        Rule Studio提供了一个专用的编辑器来编写的BOM,默认映射过来的BOM属性描述直接映射为XOM属性名,若属性名存在大写字母,则BOM属性描述会加以空格分隔。Rule Studio支持把BOM的类和成员映射至业务用户熟悉的术语和短语。

操作过程:编辑–>在”编辑术语”对话框中输入业务用户熟悉的术语或短语–>确定。

       

        修改类的名字同样如上操作。那么书写规则时就可以在规则中直接使用修改后的词汇。如下:

如果
    ‘客户’  的
 年龄 小于18 
 那么
    设置
 ‘客户’  的当前
 审批结果 为 REJECT” ; 

如果java类的属性名字足够好,那么大可不必做任何修改直接使用。

3.2 定义参数

        如果要在规则中使用已定义好的BOM,需要定义规则集参数。

        操作过程:定义参数–>添加à输入相应参数–>确定。语言描述就是在规则中显示的句柄。

        其中方向有”IN_OUT“,”IN“,”OUT“,表示参数的类型,意思和存储过程中的参数类型差不多。

       

        这样,就可以在规则中使用已定义的BOM了,因为ApplicationInfo是作为CustomerInfo类中的属性使用的,所以只定义了CustomerInfo

 

 

3.3添加规则包

       规则包就是创建规则的文件夹,如同java中的包

3.4添加规则流

       一个规则项目必需有一条主规则流,可以有若干条子规则流,规则要想被执行必需直接或者间接属于主规则流,因此子规则流上面的规则若想执行,需要把子规则流添加上主规则流上面,规则的执行会按主规则流的流程开始运行和结束。

       

       规则流采用拖拽式工具,规则流上的节点可以是规则项目中的任何类型,包括普通规则,决策表,决策树,规则包,子规则流。规则流和流程图是一样的,也可以设置分支条件。

       是否是主规则流需要在右下角的属性中进行设置:true或者 false

       

       规则包中的规则的执行顺序是随机的,其执行顺序可以设置优先级来执行,规则按优先级从大到小执行。

操作过程:鼠标选中规则流中的规则包节点,在右下角的属性中排序选项选择优先级即可。

若排序选项不设置为优先级,即使在规则上设置了优先级数,也是无效的。       

       

       优先级数的设置:

操作过程:双击规则,在右下角的属性中的优先级中输入相应的优先级数。

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营