From 36b2f13fff583e0dbc94ee40e9fe4ae6e75af4e0 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 29 二月 2024 14:44:27 +0800 Subject: [PATCH] 修改JSHelper类 --- src/main/java/com/lf/server/helper/JsHelper.java | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/lf/server/helper/JsHelper.java b/src/main/java/com/lf/server/helper/JsHelper.java index 713cee2..3a5ce6e 100644 --- a/src/main/java/com/lf/server/helper/JsHelper.java +++ b/src/main/java/com/lf/server/helper/JsHelper.java @@ -6,6 +6,8 @@ import javax.script.Invocable; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; +import java.io.File; +import java.io.FileReader; /** * JS甯姪绫� @@ -19,24 +21,27 @@ /** * 璋冪敤JS鏂规硶 */ - public Object callJsFn() { + public static Object callJsFn(String jsFile, String function, String str) { try { // 鍒涘缓 JavaScript 寮曟搸绠$悊鍣� ScriptEngineManager manager = new ScriptEngineManager(); + // 鑾峰彇 JavaScript 寮曟搸 ScriptEngine engine = manager.getEngineByName("javascript"); - // 瀹氫箟瑕佹墽琛岀殑 JavaScript 鑴氭湰 - String script = "function addNumbers(a, b){ return a + b; }"; + File f = new File(jsFile); + if (!f.exists() || f.isDirectory()) { + return null; + } + FileReader reader = new FileReader(f); // 缂栬瘧骞惰繍琛� JavaScript 鑴氭湰 - engine.eval(script); + engine.eval(reader); // 璋冪敤 JavaScript 鍑芥暟 Invocable invocable = (Invocable) engine; - Object obj = invocable.invokeFunction("addNumbers", 2, 3); - return obj; + return invocable.invokeFunction(function, str); } catch (Exception ex) { log.error(ex.getMessage(), ex); return null; -- Gitblit v1.9.3