java运行字符串代码
引入jar包
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jexl3</artifactId>
<version>3.2</version>
</dependency>
代码
package com.wl.executeString;
import org.apache.commons.jexl3.JexlEngine;
import org.apache.commons.jexl3.JexlExpression;
import org.apache.commons.jexl3.MapContext;
import org.apache.commons.jexl3.internal.Engine;
import java.util.Date;
/**
* @author 没有梦想的java菜鸟
* @Date 创建时间:2022/8/24 上午11:11
* @qq 2315290571
* @Description java运行字符串代码
*/
public class Test {
public static void main(String[] args) {
// 创建日期
Date date = new Date();
// 创建编译参数
MapContext context = new MapContext();
context.set("date",date);
// 创建运行环境
JexlEngine engine = new Engine();
// 执行代码
JexlExpression expression = engine.createExpression("date.getTime()");
System.out.println(expression.evaluate(context));
}
}