Aviator 是一个轻量级、高性能的 Java 表达式执行引擎,它动态地将表达式编译成字节码并运行。
使用
com.googlecode.aviator
aviator
{version}
最简单直观的使用:
import com.googlecode.aviator.AviatorEvaluator;
public class TestAviator {
public static void main(String[] args) {
Long result = (Long) AviatorEvaluator.execute("1+2+3");
System.out.println(result);
}
}
更加复杂的使用方式可以参考 wiki,文档已经足够详细,不在重复。
源码解析
执行表达式
主要接口
AviatorEvaluator 最重要的一个方法
execute(String expression)
execute(String expression, Map env)
execute(String expression, Map env, boolean cached)
用来执行表达式,并获取结果。围绕这个方法也有可以传入变量的 exec 方法