规则引擎在企业中有广泛的使用,比如公司工资的计算,奖金的计算,多种商品组合的折扣,客户积分的兑换等。
开源项目drools是应用比较广泛的。
作为项目集成规则引擎的是比较简单的,有难度是集成web方式的规则定义器,客户可以定义自己的业务规则,或是比较容易能看懂定义的规则。以项目为目标的企业很少有公司单独去做web规则定义定义器。
drools guvnor这个项目已经集成web 规则定义,大家在项目应用中可以直接集成该项目。
该项目在整个项目中的作用和地位可以认为是一个规则定义文件生成工具。最后生成的规则可以存放到数据库中,也可以服务的方式集成到项目中。
1.在开始定义规则前需要定义 类别(category)和一个包(package)
2.事实的载体可以是java文件编译后的jar包,也可以在新建模型声明。
3.按照业务规则就可以定义规则,guvnor提供了1业务规则向导编辑器2dsl编辑器3.drl编辑器 4.决策表 5.决策表web向导编辑。大家可以根据项目要求自行决定。
4.定义好规则的规则可以直接在guvnor进行测试,这个也是一个亮点,测试的思想和junit差不多。
5.经过测试的规则就可以部署到生产系统中去了。