首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

在Java中应用ScriptEngine调用javascript

2013-01-26 
在Java中使用ScriptEngine调用javascript在jdk1.6之后版本中新增了ScriptEngine类,允许Java程序直接调用ja

在Java中使用ScriptEngine调用javascript

在jdk1.6之后版本中新增了ScriptEngine类,允许Java程序直接调用javascript代码
Java代码
package org.mystyle.js;
import java.io.File;
import java.io.FileReader;
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
public class InvokingJavaScript {
 public static void main(String[] args) throws Exception {
  ScriptEngineManager manager = new ScriptEngineManager();
  ScriptEngine engine = manager.getEngineByName("javascript");
  String fileName = "src/demo.js";
  File file = new File(fileName);
  FileReader reader = new FileReader(file.getAbsolutePath().replaceAll("\\\\", "/"));
  engine.eval(reader);
  if(engine instanceof Invocable){
   Invocable invoke = (Invocable) engine;
   Double sum = (Double) invoke.invokeFunction("addFun", 2, 3);
   System.out.println(sum);
  }
  reader.close();
 }
}

javascript文件demo.js
function addFun(a, b){
 return a+b;
}

 

输出:

5.0

热点排行