读书人

JAVA的动态实施1 - javax.script.Scri

发布时间: 2012-12-23 11:28:15 作者: rapoo

JAVA的动态执行1 - javax.script.ScriptEngineManager
JDK1.6提供了很多新功能,其中有一个叫javax.script的软件包,用于解析Javascript代码。通过这个功能我们可以在程序运行时动态执行一些JS代码。

范例1:

// 创建引擎管理器ScriptEngineManager sem = new ScriptEngineManager();// 创建一个处理JS的引擎ScriptEngine engine = sem.getEngineByExtension("js");try{    // EVAL    engine.eval("if(1 > 2){re = true;}else{re = false;}");}catch(ScriptException ex){    ex.printStackTrace();}//获取JS变量reSystem.out.println((engine.get("re")));


范例2:
ScriptEngineManager sem = new ScriptEngineManager();ScriptEngine engine = sem.getEngineByName("JavaScript");//写一个函数String script = "function max(a, b) "+ "{ return (a > b) ? true : false;}";//执行engine.eval(script);Invocable inv = (Invocable) engine;//执行函数System.out.println(inv.invokeFunction("max", "1", "2"));



读书人网 >编程

热点推荐