Java规则引擎easy-rules之初步学习(一)

最近因为公司项目需要,开始了解easy-rules,写这篇文章相当于记录一下自己的学习过程,也是学习资料的汇总,希望也可以帮助一下和我一样学习的小白。

什么是规则引擎

将规则引擎想象成为一个以数据和规则作为输入的系统。它将这些规则应用于数据,并根据规则定义为我们提供输出。

我理解为就是将项目中写死的ifelse那些判断条件和结果拿出来,通过规则引擎去实现,增加它的动态性,就不需要一改动东西,就需要去找到代码去改动。

在以下几种情况时,更适合于引入规则引擎:

  • 需求不能确定,变更频率较高
  • 需要快速做出响应和决策
  • 规则变更期望脱离开发人员,脱离coding
  • 流程分支非常复杂,规则变量庞大,常规编码(if-else)难以实现,通过规则引擎将多变的规则与其他的业务逻辑进行剥离。
  • 业务多,接入成本高
  • 实现热部署,降低需求变动的成本

规则引擎有很多,Drools、RuleBook等,市场上用的比较多的还是Drools和easyrules,我们这次项目选用easyrules是因为它学习成本较低,而且所需业务场景也不复杂。

对比方面easyrulesdrools
学习成本
维护成本
规则编排能力较弱
执行效率较低
是否开源开源开源

什么是 EasyRules

Easy Rules是一个简单而强大的Java规则引擎,提供以下功能:

轻量级框架和易于学习的API
基于POJO的开发与注解的编程模型
定义抽象的业务规则并轻松应用它们
支持从简单规则创建组合规则的能力
支持使用表达式语言(如MVEL和SpEL)定义规则的能力

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值