From ed8c7a5effd0d423ce1118b680ecdca6fe732609 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 02 七月 2025 16:43:13 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.11.205:9000/r/P2022036_Service --- 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