本文节选自《疯狂工作流讲义(第2版)》
京东购买地址:https://item.jd.com/12246565.html
工作流Activiti6电子书:http://blog.csdn.net/boxiong86/article/details/78488562
工作流Activiti6教学视频:http://blog.csdn.net/boxiong86/article/details/78608585
Drools介绍与运行
Drools概述
为了能适应各种业务规则的变化,能让业务人员能直接参与业务规则的管理,降低系统的成本,规则引擎应运而生。使用规则引擎可以将业务规则与应用系统进行分离,让规则引擎变成一个独立的逻辑组件,从而降低了应用程序的复杂性与扩展成本。一个规则引擎,能够接收数据输入,并根据这些数据进行业务规则解析,最终作出业务决策。
目前在Java领域的规则引擎有JBoss Drools、Mandarax、OpenRules、JEOPS等,本章所讲述的就是JBoss旗下的Drools,当前版本的Activiti只支持该种规则引擎。
规则引擎Drools
Drools原来是Codehaus下的一个开源项目,后来纳入到JBoss下。Drools实现和扩展了Rete算法,Rete算法由Charles Forgy博士于1978年在其论文中提及,1982年发布了一个简单的版本。Rete算法主要包括规则编译和运行时执行两部分,Drools实现这种算法时,让其具有了面向对象的特性,Drools实现的Rete算法,称之为ReteOO,Rete算法就好像一个规则处理大脑。除Rete算法外,Drools