package com.lf.server.helper;
|
|
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.LogFactory;
|
|
import javax.script.Invocable;
|
import javax.script.ScriptEngine;
|
import javax.script.ScriptEngineManager;
|
|
/**
|
* JS帮助类
|
*
|
* @author WWW
|
* @date 2024-02-29
|
*/
|
public class JsHelper {
|
private final static Log log = LogFactory.getLog(JsHelper.class);
|
|
/**
|
* 调用JS方法
|
*/
|
public Object callJsFn() {
|
try {
|
// 创建 JavaScript 引擎管理器
|
ScriptEngineManager manager = new ScriptEngineManager();
|
// 获取 JavaScript 引擎
|
ScriptEngine engine = manager.getEngineByName("javascript");
|
|
// 定义要执行的 JavaScript 脚本
|
String script = "function addNumbers(a, b){ return a + b; }";
|
|
// 编译并运行 JavaScript 脚本
|
engine.eval(script);
|
|
// 调用 JavaScript 函数
|
Invocable invocable = (Invocable) engine;
|
Object obj = invocable.invokeFunction("addNumbers", 2, 3);
|
|
return obj;
|
} catch (Exception ex) {
|
log.error(ex.getMessage(), ex);
|
return null;
|
}
|
}
|
}
|