规则引擎是easy-rules facts 的核心,以下是关于规则引擎的一些参数说明
从3.1 开始,easy-rules提供了一个新的rule 执行方法InferenceRulesEngine 我们可以
进行推理的方式执行,直到有符合条件的rule
创建rule 引擎
包含了两种,默认的以及一个包含推理的
RulesEngine rulesEngine = new DefaultRulesEngine();
// or
RulesEngine rulesEngine = new InferenceRulesEngine();
运行规则引擎
rulesEngine.fire(rules, facts);
规则引擎的参数
- rulePriorityThreshold
当碰到优先级超过此配额,忽略其他rule 的执行 - skipOnFirstAppliedRule
如果碰到有异常,告诉引擎,停止执行其他的规则 - skipOnFirstNonTriggeredRule
如果碰到一个rule没有触发,告诉引擎停止执行其他的
编码方式控制参数
RulesEngineParameters parameters = new RulesEngineParameters()
.rulePriorityThreshold(10)
.skipOnFirstAppliedRule(true)
.skipOnFirstFailedRule(true)
.skipOnFirstNonTriggeredRule(true);
RulesEngine rulesEngine = new DefaultRulesEngine(parameters);
获取引擎参数的方式
RulesEngineParameters parameters = myEngine.getParameters();
参考资料
https://github.com/j-easy/easy-rules/wiki/defining-rules-engine
来源:oschina
链接:https://my.oschina.net/u/4392911/blog/3234159