jfireEL高性能 EL 表达式解析框架

联合创作 · 2023-10-01 07:21

jfireEL 是快速的 EL 表达式解析器,支持丰富的 EL 表达式,7 倍于 SpringEL 的超高性能。

使用场景

EL 表达式解析,在一些涉及到动态规则配置的场合使用较多。比如工作流引擎中的外部规则注入,比如 Spring 框架中的 SpEL 解析等等。jfireEL 框架支持常见的 EL 表达式,诸如四则运算,数组元素获取,链表元素获取,Map 键值对获取,属性获取,方法调用,级联调用,支持获取类定义,枚举定义,支持获取对象等等。

相比于 SpringEL,jfireEL 在表达上更为简洁,比如对于 SpringEL,一个变量属性级联对比的表达式可以写为vars['home'].bool(vars['person'].getAge() + '12' != vars['value']),而jfireEL 的写法直接为home.bool(person.getAge() + '12' != value)。显然 jfireEL 的可读性更高。

性能测试

使用 EL 表达式vars['home'].bool(vars['person'].getAge() + '12' != vars['value'])对jfireEL,BeetlEL,SpringEL 三款框架进行性能对比验证。在进入测试之前均预热相同次数确保初始化完毕。三款框架性能对比如下:

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报