麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

在JAVA程序中直接執行JAVASCRIPT代碼(簡單調用實例)

2019-11-17 04:03:19
字體:
來源:轉載
供稿:網友
JDK6.0支持java與JAVASCRipT之間的互相調用,下面的實例將演示幾種JAVA代碼調用執行Javascript代碼的方法。

view plaincopy to clipboardPRint?
import javax.script.Invocable;   
import javax.script.ScriptEngine;   
import javax.script.ScriptEngineManager;   
import javax.script.ScriptException;   
  
public class Test {   
  
    public static void main(String[] args) {   
        ScriptEngineManager sem = new ScriptEngineManager();   
        ScriptEngine se = sem.getEngineByName("javascript");   
        try {   
            //調用直接JAVASCRIPT語句   
            se.eval("println('111');");   
            String tmpstr = "test string";   
            se.eval(("println('" + tmpstr + "');"));   
  
            //調用無參數方法JAVASCRIPT函數   
            se.eval("function sayHello() {"  
                    + "  print('Hello '+strname+'!');return 'my name is '+strname;" + "}");   
            Invocable invocableEngine = (Invocable) se;   
            se.put("strname", "testname");   
            String callbackvalue=(String) invocableEngine.invokeFunction("sayHello");   
            System.out.println(callbackvalue);   
               
            //調用有參數JAVASCRIPT函數   
            se.eval("function sayHello2(strname2) {"  
                    + "  print('Hello '+strname+'!');return 'my name is '+strname2;" + "}");   
            callbackvalue=(String)invocableEngine.invokeFunction("sayHello2", "testname2");   
            System.out.println(callbackvalue);   
               
        } catch (ScriptException e) {   
            // TODO Auto-generated catch block   
            e.printStackTrace();   
        } catch (NoSuchMethodException e) {   
            // TODO Auto-generated catch block   
            e.printStackTrace();   
        }   
    }   
}  
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;

public class Test {

public static void main(String[] args) {
ScriptEngineManager sem = new ScriptEngineManager();
ScriptEngine se = sem.getEngineByName("javascript");
try {
//調用直接JAVASCRIPT語句
se.eval("println('111');");
String tmpstr = "test string";
se.eval(("println('" + tmpstr + "');"));

//調用無參數方法JAVASCRIPT函數
se.eval("function sayHello() {"
+ "  print('Hello '+strname+'!');return 'my name is '+strname;" + "}");
Invocable invocableEngine = (Invocable) se;
se.put("strname", "testname");
String callbackvalue=(String) invocableEngine.invokeFunction("sayHello");
System.out.println(callbackvalue);

//調用有參數JAVASCRIPT函數
se.eval("function sayHello2(strname2) {"
+ "  print('Hello '+strname+'!');return 'my name is '+strname2;" + "}");
callbackvalue=(String)invocableEngine.invokeFunction("sayHello2", "testname2");
System.out.println(callbackvalue);

} catch (ScriptException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

執行后,輸出結果如下:

111
test string
Hello testname!my name is testname
Hello testname!my name is testname2

      javax.script包為我們提供了不少用得上的類和方法,這樣調用增加了前、后臺之間的交互性,JAVASCRIPT函數可寫在前臺頁面中,實現內容的變更對后臺無影響,不用重新編譯、發布即可生效。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品成人av一区二区在线播放 | 18pao国产成人免费视频 | 看一级大毛片 | 欧美精品一区二区视频 | 日日爱影院 | 久久精品99北条麻妃 | 久久成人视屏 | 得得啪在线视频 | 欧美成人精品欧美一级 | www.17c亚洲蜜桃 | 黄色国产在线观看 | 国产精品麻豆一区二区三区 | 精品国产亚洲人成在线 | 免费黄色一级网站 | 91精选视频在线观看 | 天天艹综合 | 欧美性生交zzzzzxxxxx | 青热久思思 | 羞羞色在线观看 | 欧美国产一区二区三区 | 亚洲人成电影在线 | 717影院理论午夜伦八戒秦先生 | 大逼逼影院 | 成人一区二区在线观看视频 | 国产午夜亚洲精品 | 日韩午夜一区二区三区 | 久久九九热re6这里有精品 | 国产一有一级毛片视频 | 免费观看国产精品视频 | 国产亚洲欧美日韩在线观看不卡 | 成人在线免费观看视频 | 在线免费观看毛片 | 黄色特级大片 | 一区二区三区日韩在线 | 成人精品免费看 | 日韩精品久久久久久久电影99爱 | 午夜视频大全 | 久久99亚洲精品久久99果 | 极色品影院 | 成人午夜视频在线观看 | av在线观|