当前位置:   article > 正文

推荐一款好用的Java表达式执行引擎_java uel表达式 执行器

java uel表达式 执行器

最近在项目中需要根据不同的条件来做走不同分支的逻辑,那么就需要动态判断条件表达式结果(不想写一堆if else),研究了一番,发现了一个轻量级的Java表达式执行引擎:aviator,整个使用下来挺简单高效的,今天推荐给大家,下面介绍啊一下这款框架!
在这里插入图片描述

二.aviator简介

Aviator是一个轻量级、高性能的Java表达式执行引擎, 它动态地将表达式编译成字节码并运行,主要用于各种表达式的动态求值!相比Groovy这样的重量级脚本语言,aviator是非常轻量级的表达式执行引擎。

二.aviator特性

  • 支持绝大多数运算操作符,包括算术操作符、关系运算符、逻辑操作符、位运算符、正则匹配操作符(=~)、三元表达式
  • 支持传入变量

我在开发里用到的就是关系运算符,动态判断执行结果(true/false),以两个变量a、b为例看下aviator的执行方式:

图片

aviator提供了AviatorEvaluator#execute(java.lang.String)方法来执行操作运算符

  • 内置一套强大的常用函数库

图片

  • 支持自定义函数

如果自带函数不能满足开发需要, aviator还支持自定义函数,只要实现com.googlecode.aviator.runtime.type.AviatorFunction接口, 并注册到AviatorEvaluator即可使用!

注册函数通过AviatorEvaluator.addFunction方法, 移除可以通过removeFunction方法

  • 支持赋值

图片

aviator提供的特性还有很多,不再一一举例,github地址如下,有兴趣的可以进一步学习应用

https://github.com/killme2008/aviator

​​​​​​
更多内容欢迎关注个人微信公众号,一起成长!

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/636460
推荐阅读
相关标签
  

闽ICP备14008679号