Drools 规则属性
规则体中的属性是学习规则语法的重要组成部分,是有默认值的。
no-loop
默认值:false
类型:Boolean
属性说明:防止死循环,当规则通过 update 之类的函数修改了 Fact 对象时,可能使规则再次被激活,从而导致死循环。
ruleflow-group
默认值:N/A
类型:String
属性说明:包含 rule、flow 和 group 3 个部分,分别代表规则、流程、分组,即规则流。
lock-on-active
默认值:false
类型:Boolean
属性说明:锁定活跃。当规则体设置了 lock-on-active 为 true,则无论如何更新规则事实对象 Fact,当前规则也只能被触发一次。是 no-loop 的升级版。
salience
默认值:0
类型:Integer
属性说明:可以设置负数,其值越大,执行顺序越高,排名越靠前。
enabled
默认值:true
类型:Boolean
属性说明:指规则是否可以被执行,若规则体设置为 enabled false,则规则体将视为永不激活。
dialect
可能值:Java 或 Mvel
类型:String
属性说明:定义规则体中要使用的语言类型,支持 Mvel 和 Java 两种类型的语言。
date-effective
默认值:N/A
类型:String、日期、时间
属性说明:只有当前系统时间大于等于设置的时间或日期,规则才会被激活。
date-expires
默认值:N/A
类型:String、日期、时间
属性说明:只有当前系统时间小于等于设置的时间或日期,规则才会被激活。
duration
默认值:无
类型:long
属性说明:定时器。
timer
默认值:无
类型:与 Java 定时器参数类型相似
属性说明:定时器。用来控制规则的执行时间。
activation-group
默认值:N/A
类型:String
属性说明:激活分组,通过字符串定义分组名称,具有相同组名称的规则体有且只有一个规则被激活,其他规则体的 LHS 部分即使仍然为 true 也不会再被执行。
agenda-group
默认值:无,需要通过 Java 设置
类型:String
属性说明:议程分组,可以通过配置参数来控制规则的执行,只有获取焦点的规则才会被激活。
auto-focus
默认值:false
类型:Boolean
属性说明:自动获取焦点,即当前规则是否被激活。
评论