一、什么是规则引擎?
规则引擎由推理引擎发展而来, 规则引擎是一种嵌套在应用程序中的组件,它实现了将业务规则从应用程序代码中分离出来。规则引擎使用特定的语法编写业务规则,规则引擎可以接受数据输入、解释业务规则、并根据业务规则做出相应的决策。
引入规则引擎的优点:
1、实现业务逻辑和业务规则的分离 ,使得项目解耦合;
2、可以动态变更规则,进而适应快速的也无需求变化;
3、简化项目编程,使得业务人员也可以参与业务规则的编写系统维护等;
二、Drools规则引擎简介
Drools规则引擎是JBoos旗下的一款基于Java的开源规则引擎,完全实现了Rate算法。
(想了解Rate算法的可自行查询学习,此处不做分享)
DROOLS 是一个基于CHARLES FORGY'S的RETE算法的,易于访问企业策略、易于调整以及易于管理的开源业务规则引 擎,符合业内标准,速度快、效率高。 业务分析师人员或审核人员可以利用它轻松查看业务规则,检验已编码的规则执行了所需的业务规则。
用XML节点来规范If--Then句式和事实的定义,使引擎干起活来很舒服。 而使用Java,Groovy等原生语言来做判断和执行语句,让程序员很容易过渡、移植,学习曲线很低。