1、//声明是什么类型的脚本ScriptEngineManager manager = new ScriptEngineManager();ScriptEngine engine = manager.getEngineByName("js");
2、//编写js方法体engine.eval("function getTest(){return 520;}");
3、//执行js脚本。Invocable invocable = (Invocable) engine;invocable.invokeFunction("getTest");
4、完整方法:public static void main(String[] args) { //声明是什么类型的脚本 ScriptEn爿讥旌护gineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("js"); //编写js方法体 try { engine.eval("function getTest(){return 520;}"); //执行js脚本。 Invocable invocable = (Invocable) engine; Object object = invocable.invokeFunction("getTest"); System.out.println(object); } catch (Exception e) { e.printStackTrace(); }}
5、可以读取文件路径的方式来加载js。@Testpublic voi蟠校盯昂d jsTest() { //声明是什么恽贴淑溪类型的脚本 ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("js"); //编写js方法体 try { org.springframework.core.io.Resource rnavJs = new ClassPathResource("/static/nav.js"); engine.eval(new FileReader(rnavJs.getFile())); //执行js脚本。 Invocable invocable = (Invocable) engine; Object object = invocable.invokeFunction("myPrint", "wowowo"); System.out.println(object); } catch (Exception e) { e.printStackTrace(); }}