最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java執(zhí)行JavaScript代碼

 更新時(shí)間:2016年03月27日 17:26:48   作者:云聰  
這篇文章主要為大家詳細(xì)介紹了Java執(zhí)行JavaScript代碼的具體操作方法,感興趣的小伙伴們可以參考一下

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

function execute(s1, s2){
  return s1 + s2;
}

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

/**
 * 接口中的方法簽名必須與要執(zhí)行的JavaScript方法一致
 * @author yuncong
 *
 */
public interface Methods {
  public String execute(String s1,String s2);
}

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

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的參數(shù)為所要執(zhí)行的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();
    }
  }
}

運(yùn)行ExecuteScript類,輸出如下:

/C:/Users/yuncong/git/login/target/classes/executescript/ 
liyuncong

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。

相關(guān)文章

  • 常用Java排序算法詳解

    常用Java排序算法詳解

    本文主要介紹了java的七種常見(jiàn)排序算法的實(shí)現(xiàn),對(duì)選擇排序、插入排序、冒泡排序、歸并排序、快速排序、希爾排序、最小堆排序進(jìn)行原理分析與實(shí)例介紹,具有很好的參考價(jià)值。下面就跟著小編一起來(lái)看下吧
    2016-12-12
  • maven私服搭建與使用教程

    maven私服搭建與使用教程

    在使用maven進(jìn)行Java項(xiàng)目的開(kāi)發(fā)過(guò)程中,難免會(huì)有些公共的私有庫(kù),這些庫(kù)是不太方便放到中央倉(cāng)庫(kù)的,可以通過(guò)Nexus搭建一個(gè)私有倉(cāng)庫(kù),這篇文章主要介紹了maven私服搭建與使用,需要的朋友可以參考下
    2023-03-03
  • Java中的反射機(jī)制基本運(yùn)用詳解

    Java中的反射機(jī)制基本運(yùn)用詳解

    這篇文章主要介紹了Java 反射機(jī)制原理與用法,結(jié)合實(shí)例形式詳細(xì)分析了Java反射機(jī)制的相關(guān)概念、原理、基本使用方法及操作注意事項(xiàng),需要的朋友可以參考下
    2021-08-08
  • Java面試高頻問(wèn)題之RabbitMQ系列全面解析

    Java面試高頻問(wèn)題之RabbitMQ系列全面解析

    在介紹RabbitMQ之前實(shí)現(xiàn)要介紹一下MQ,MQ是什么?MQ全稱是Message Queue,可以理解為消息隊(duì)列的意思,簡(jiǎn)單來(lái)說(shuō)就是消息以管道的方式進(jìn)行傳遞。RabbitMQ是一個(gè)實(shí)現(xiàn)了AMQP(Advanced Message Queuing Protocol)高級(jí)消息隊(duì)列協(xié)議的消息隊(duì)列服務(wù),用Erlang語(yǔ)言的
    2021-11-11
  • 基于Java實(shí)現(xiàn)互聯(lián)網(wǎng)實(shí)時(shí)聊天系統(tǒng)(附源碼)

    基于Java實(shí)現(xiàn)互聯(lián)網(wǎng)實(shí)時(shí)聊天系統(tǒng)(附源碼)

    Netty?是一個(gè)利用?Java?的高級(jí)網(wǎng)絡(luò)的能力,隱藏其背后的復(fù)雜性而提供一個(gè)易于使用的?API?的客戶端/服務(wù)器框架。本文將利用它實(shí)現(xiàn)互聯(lián)網(wǎng)實(shí)時(shí)聊天系統(tǒng),感興趣的可以了解一下
    2022-09-09
  • Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    這篇文章主要介紹了Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Java實(shí)現(xiàn)超級(jí)實(shí)用的日記本

    Java實(shí)現(xiàn)超級(jí)實(shí)用的日記本

    一個(gè)用Java語(yǔ)言編寫(xiě)的,實(shí)現(xiàn)日記本的基本編輯功能、各篇日記之間的上下翻頁(yè)、查詢?nèi)沼泝?nèi)容的程序。全部代碼分享給大家,有需要的小伙伴參考下。
    2015-05-05
  • Java 中的類和對(duì)象詳情

    Java 中的類和對(duì)象詳情

    這篇文章主要介紹了Java 中的類和對(duì)象,類可以看成是創(chuàng)建Java對(duì)象的模板,下面文章圍繞著Java 類與對(duì)象詳細(xì)內(nèi)容展開(kāi),需要的朋友可以參考一下
    2021-11-11
  • java中Serializable接口作用詳解

    java中Serializable接口作用詳解

    這篇文章主要為大家詳細(xì)介紹了java中Serializable接口作用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 關(guān)于Java 并發(fā)的 CAS

    關(guān)于Java 并發(fā)的 CAS

    后端開(kāi)發(fā)鎖成為一個(gè)不可避免的話題,今天我們討論的是與之對(duì)應(yīng)的無(wú)鎖 CAS。本文會(huì)從怎么來(lái)的、是什么、怎么用、原理分析、遇到的問(wèn)題等不同的角度帶你真正搞懂 CAS。
    2021-09-09

最新評(píng)論

达州市| 穆棱市| 开阳县| 金溪县| 镇平县| 孝感市| 陈巴尔虎旗| 通化市| 神农架林区| 唐河县| 会东县| 环江| 闽侯县| 渑池县| 汶上县| 交口县| 常熟市| 光山县| 石林| 永安市| 大方县| 即墨市| 甘肃省| 鄂伦春自治旗| 阳春市| 碌曲县| 阿拉善右旗| 宾阳县| 桃源县| 胶州市| 左权县| 济阳县| 闸北区| 且末县| 德安县| 溆浦县| 石家庄市| 稻城县| 沂源县| 依安县| 喀什市|