LiteFlow v2.10.2发布!国产超好用的规则引擎框架

LiteFlow介绍

LiteFlow是一个开源编列式规矩引擎,能够让你的体系逻辑任意编列,可选用脚本书写逻辑,支撑多达5种脚本语言,支撑丰厚的第三方存储的支撑,一切的逻辑和规矩均可热变更。规划体系和重构体系的神器。

LiteFlow是国内优异的社区驱动型开源项目,开源2年多,目前现已被各大公司应用在中心体系上。特性以及支撑度都非常好。

假如你是第一次知道这个项目,能够去官网或相关的主页进行了解:

项目官网:

liteflow.yomahub.com

gitee保管库房:

gitee.com/dromara/lit…

github保管库房:

github.com/dromara/lit…

v2.10.2介绍

咱们为每个迭代版别都定了一个版别特性。

LiteFlow 2.10.2的版别特性就是与或非表达式。

除此之外,咱们还增强了一些内容,修正了社区提出的bug。一共5个issue,作为此次小版别迭代的组成部分。

与或非表达式

社区里一向有人反响,条件编列能否在EL上写表达式,例如a==5 && b>0这种。

其实编列EL语法一切的操作目标都是组件,所以EL编列语法不能像逻辑代码一样来写许多逻辑进程。

我一向主张逻辑进程,经过java代码或许脚本组件来完结。而脚本组件是能够热更新热替换的。更加灵敏。

但是在实际应用中,的确有人需要在条件编列里判别多个条件,而每个条件又是相互独立的组件。那么依照以前的写法,你只能把多个条件的逻辑塞到一个组件里,回来统一的true或许false。

这次咱们新增了组件编列层面的与或非表达式,就是ANDORNOT表达式。

用法为办法形式:AND(a, b, c)

可能有些社区里的同学会问,为什么不规划成a && b && c呢,或许是a AND b AND c呢。

我来解释一下,首先这种用法形式和之前的语法照应,都是办法形式,其次操作符的形式就有点像逻辑了,而这儿突出的是编列。再者操作符的形式的几个关键字都被底层占用了。

综上所述,所以连续了之前的EL表述方法。

详细文档在官网EL规矩语法大章的与或非表达式小章中。

脚本新增了一些元数据

脚本中现在也能够拿到循环下标了,在元数据里加入了loopIndexloopObject2个特点。

能够经过_meta.loopIndex_meta.loopObject来获取到。

一切的脚本元数据能够参照官网的脚本组件大章中的Java进行交互小章节。

挑选表达式的增强和一些bug的修正

现在在挑选编列语法上,之前tag特点只能增加到组件上,现在对任何的表达式后面都能够增加tag特点了。

在挑选节点的回来上,更加灵敏了。

详细见官网的常规组件大章中的挑选组件小章节。

此次咱们还别的修正了2个bug。

完整更新列表

特性 #I6RF8Y EL表达式里支撑并或非操作符
https://gitee.com/dromara/liteFlow/issues/I6RF8Y
增强 #I6QOFJ groovy无法支撑#循环下标获取获取,期望脚本能够支撑获取循环下标
https://gitee.com/dromara/liteFlow/issues/I6QOFJ
增强 #I6RFOE LiteFlow能否在流程(表达式)增加类似tag字段的特点,提高挑选组件的复用率呢?
https://gitee.com/dromara/liteFlow/issues/I6RFOE
修正 #I6TRT2 EL表达式里的//被过滤掉了
https://gitee.com/dromara/liteFlow/issues/I6TRT2
修正 #I6URNQ 在CATCH表达中写独自的组件,SLOT中会拿不到反常
https://gitee.com/dromara/liteFlow/issues/I6URNQ

支撑和赞助LiteFlow

开源一个项目并坚持2年并不容易,所以我也需要一点赞助来给自己充能,假如各位对LiteFlow这个项目有信心而且乐意支撑我的的话,能够在官网首先点击给LiteFlow发电按钮。

但不管你是否挑选赞助,我仍然会在社区里尽可能的处理你们的问题。

如何加群

LiteFlow的社区群现已有大约2500人以上了。你有任何问题,都能够在群里问。

关于加群的方法,请参阅:liteflow.yomahub.com/pages/73c2c…