一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Java執行JavaScript代碼

Java執行JavaScript代碼

2020-04-13 11:36云聰 JAVA教程

這篇文章主要為大家詳細介紹了Java執行JavaScript代碼的具體操作方法,感興趣的小伙伴們可以參考一下

我們要在Java中執行JavaScriptMethods.js中的execute(s1,s2)方法,JavaScriptMethods.js文件內容如下:

?
1
2
3
function execute(s1, s2){
  return s1 + s2;
}

首先需要定義一個接口,這個接口中給出與要執行的JavaScript方法一樣的方法簽名,我們定義接口Methods,它的內容如下:

?
1
2
3
4
5
6
7
8
/**
 * 接口中的方法簽名必須與要執行的JavaScript方法一致
 * @author yuncong
 *
 */
public interface Methods {
  public String execute(String s1,String s2);
}

然后,就可以用腳本引擎執行JavaScriptMethods.js中execute(s1,s2)方法了,具體內容寫在下面的ExecuteScript類中的:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.io.FileReader;
 
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
 
 
public class ExecuteScript {
  public static void main(String[] args) {
    ScriptEngineManager manager = new ScriptEngineManager();
    ScriptEngine engine = manager.getEngineByName("js");
    try {
      String path = ExecuteScript.class.getResource("").getPath();
      System.out.println(path);
      // FileReader的參數為所要執行的js文件的路徑
      engine.eval(new FileReader(path + "JavaScriptMethods.js"));
      if (engine instanceof Invocable) {
        Invocable invocable = (Invocable) engine;
        Methods executeMethod = invocable.getInterface(Methods.class);
        System.out.println(executeMethod.execute("li", "yuncong"));
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

運行ExecuteScript類,輸出如下:

?
1
2
/C:/Users/yuncong/git/login/target/classes/executescript/
liyuncong

以上就是本文的全部內容,希望對大家的學習有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 丁香五香天堂网 | 天天干天天操天天爽 | 欧美一区二区三区精品国产 | 我不卡影院手机在线观看 | 久久精品视在线观看85 | 肉浦团在线观看 | 欧美成人在线影院 | 草莓在深夜释放自己软件 | 欧美在线成人免费国产 | 全彩孕交漫画福利啪啪吧 | 亚洲精品97福利在线 | 女人zooxx禽交 | 99久久999久久久综合精品涩 | 好姑娘在线观看完整版免费 | 侵犯小男生免费视频网站 | www.九九| 欧美成黑人性猛交xxoo | 无码一区二区三区视频 | 国产品精人成福利视频 | 红色毛片| 亚州春色| 狠狠婷婷综合缴情亚洲 | caoporm国产精品视频免费 | 久久一er精这里有精品 | 欧美日韩高清一区 | 精精国产www视频在线观看免费 | 好猛好紧好硬使劲好大刺激视频 | 国产精品免费精品自在线观看 | 美女插插视频 | tiny4k欧美极品在线 | 国产精品人人视频 | 欧美日韩亚洲国内综合网俺 | 国产精品视频二区不卡 | 久久精品热在线观看85 | 国产免费精彩视频 | 超爽人人做人人爽 | h版欧美大片免费观看 | 高清视频在线观看+免费 | 久久国产综合精品欧美 | 麻豆在线md0087免费 | 欧美精品综合一区二区三区 |