工具类:commons-jexl-2.0.jar
一、导包
Maven:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jexl</artifactId>
<version>2.0</version>
</dependency>
二、使用方法
2.1
// 声明字符串表达式
Expression e = new JexlEngine().createExpression("a>b && a < c");
// 表达式使用到的参数
JexlContext jc = new MapContext();
jc.set("a", 50);
jc.set("b", 1);
jc.set("c", 100);
// 设置参数并执行
Object evaluate = e.evaluate(jc);
System.out.println(evaluate);
2.2
// 声明字符串表达式
Expression e = new JexlEngine().createExpression("Service.save(entity)");
// Service类及实体,可以用@Autowire注入bean
Service service = new Service();
Entity entity = new Entity();
// 表达式使用到的参数
JexlContext jc = new MapContext();
jc.set("Service", service );
jc.set("entity", entity);
// 设置参数并执行
Object evaluate = e.evaluate(jc);
System.out.println(evaluate);