easy-rules facts 规则引擎说明

规则引擎是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

posted on 2020-04-13 20:20  荣锋亮  阅读(1664)  评论(0编辑  收藏  举报

导航