wordpress建站 产品详情页,电商平台网站大全,巨量广告投放平台,北京网校企业的需求往往是多样化且复杂的#xff0c;对接不同企业时会有不同的定制化的业务模型和流程。我们在业务系统中使用表达式引擎#xff0c;集中配置管理业务规则#xff0c;并实现实时决策和计算#xff0c;可以提高系统的灵活性和响应能力。 引入规则引擎似乎就能解决这个… 企业的需求往往是多样化且复杂的对接不同企业时会有不同的定制化的业务模型和流程。我们在业务系统中使用表达式引擎集中配置管理业务规则并实现实时决策和计算可以提高系统的灵活性和响应能力。 引入规则引擎似乎就能解决这个问题规则引擎的一个好处就是可以使业务规则和业务代码分离从而降低维护难度。 几种常见表达式引擎 AviatorScript 、MVEL 、OGNL 、SpEL 、QLExpress 、JEXL 、JUEL 。
ik-expression
IK Expression 是一个开源的OpenSource)可扩展的Extensible基于 java 语言开发的一个超轻量级Super lightweight的公式化语言解析执行工具包。2009 年 2 月发布第一个版本2009 年 10 月发布最后一个版本后再没有新版本发布所以没有纳入此次选型。
JSEL
JSEL 是一个兼容 JavaScript 运算规则的简单的表达式解释引擎你可以通过 Map 接口或者 JavaBean 给出一个变量集合能后通过表达式从这个集合中抽取变量再通过表达式逻辑生成你需要的数据。2009 年发布第一个版本2011 年发布最后一个版本后未再更新所以没有纳入此次选型。
此外还有其他规则引擎 Drools urule easy-rules 。相对比较成熟完善的脚本语言如 Groovy 也不参与选型比较。 参考资料
[1] QLExpresshttps://github.com/alibaba/QLExpress
[2] AviatorScripthttps://github.com/killme2008/aviatorscript
[3] MVELhttps://github.com/mvel/mvel
[4] OGNLhttps://github.com/orphan-oss/ognl
[5] SpElhttps://github.com/spring-projects/spring-framework
[6] Janinohttps://github.com/janino-compiler/janino
[7] JUELhttps://github.com/beckchr/juel
[8] JEXLhttps://github.com/apache/commons-jexl
[9] Felhttps://github.com/dbcxy/fast-el
[10] ik-expressionhttps://code.google.com/archive/p/ik-expression/
[11] JSELhttps://code.google.com/archive/p/lite/wikis/JSEL.wiki
[1] JMHhttps://www.cnblogs.com/wupeixuan/p/13091381.html