规则引擎之drools

    drools是一个规则引擎,可以将开发从业务中解放出来,不用重复写不同的业务、然后测试、上线,只需要将业务规则配置到drl文件,然后每次有新业务需求的时候,只需要改一下配置文件,项目不需要重新上线。drools帮你装载规则,解析规则,应用规则到你的业务。总之,使用drools你可以将业务规则的判定放在引擎里面去做,程序中只保留需要的业务数据。

    比如抽奖,其实抽奖每次规则都是差不多的,无非就是换个规则,比如新手大礼包,过生日,过节,然后就是礼品的类目、数量会变化,我们将这些业务数据放到facet里面,然后将规则配置到drl文件中,然后每次修改drl规则文件,拿到刚才说的那些业务数据,利用drools装载的规则进行判断,看用户是否中奖。

    这里提供一个例子,是活动相关的,根据数据的初始值匹配规则、执行规则、产生结果。

    1.drl配置文件

 

package promotionRule;

import mydrools.Promotion;


rule step1
    salience 100
    lock-on-active true
    when
        $promotionRule : Promotion(getPurchaseNum()== 0&&getGoodsName()=="机油")
    then
        $promotionRule.setPurchaseNum($promotionRule.getPurchaseNum()+10);
        $promotionRule.recordPointLog("只要
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值