what is QLExpress
QLExpress是阿里开源的一个规则引擎,对java支持良好,具体描述及用法直接移步github:https://github.com/alibaba/QLExpress
just do it!
github中对基本用法已经描述很清楚,此处不再赘述,我们直接通过一个入门案例来帮忙理解,
fisrt
我们先来看一段java伪代码
1 | if(新用户) { |
我们代码中都会出现类似的逻辑,如果此时我想要修改为新用户增送积分,否则赠送优惠券呢,这时候就需要修改if-else,此时我们可以使用规则引擎来轻松实现逻辑,并通过修改规则引擎描述就可以直接修改功能,咋做嘞,往下瞅~
show you code
1 | package com.qlexpress.demo; |
end
案例中规则为:
1 | 如果 (是否新用户(1)) 则 { 赠送优惠券(1)} 否则 { 赠送积分(1)} 如果 (是否有手机号(1)) 则 {发送短信(\"欢迎您哦\")} |
如果此时我要修改,我可以直接修改语句为:
1 | 如果 (是否新用户(2)) 则 { 赠送优惠券(1)} 否则 { 赠送积分(1)} 如果 (是否有手机号(1)) 则 {发送短信(\"欢迎您哦\")} |
如果把这个规则直接作为配置化,只要语句符合规则,直接修改就ok了。