java执行javascript

来源:互联网 发布:莽荒纪羽翼进阶数据 编辑:程序博客网 时间:2024/05/18 02:07
package org.script;import javax.script.Invocable;import javax.script.ScriptEngine;import javax.script.ScriptEngineManager;public class ScriptEngineManagerDemo {public static void main(String[] args) {ScriptEngineManager sem = new ScriptEngineManager();    /*script引擎管理*/        ScriptEngine se = sem.getEngineByName("javascript");           /*script引擎*/        try {                se.eval(" var strname = 'Key' ") ;                     /* 执行一段script */                se.eval("function sayHello(   ) { "                      + " print('Hello '+strname+'!');return 'my name is '+strname;" + "}");   /* 添加一个方法*/                Invocable invocableEngine = (Invocable) se ;             String callbackvalue=(String) invocableEngine.invokeFunction("sayHello" );   /*调用方法中的函数*/            System.out.println( callbackvalue ) ;              /** 打印返回值*/                        } catch (Exception e) { e.printStackTrace();}          }}



输出结果: