亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java編程中實(shí)現(xiàn)調(diào)用js方法分析

 更新時(shí)間:2017年09月02日 12:10:13   作者:judyge  
這篇文章主要介紹了java編程中實(shí)現(xiàn)調(diào)用js方法,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了java編程中調(diào)用js方法的常用操作技巧與注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了java編程中實(shí)現(xiàn)調(diào)用js方法。分享給大家供大家參考,具體如下:

/*
* 加載腳本引擎,并在java中調(diào)用js方法
*/
public void test2()
{
     ScriptEngineManager manager = new ScriptEngineManager();
     ScriptEngine engine = manager.getEngineByName("javascript");
     try {
       String str="2&1";
       Double d = (Double) engine.eval(str);
       Integer i=d.intValue();
       System.out.println(i);
     } catch (ScriptException ex) {
      ex.printStackTrace();
     }
}

/*
* 在java中調(diào)用js,jdk1.6中有加載js引擎類,然后由它來(lái)調(diào)用js方法。
* 并通過(guò)JDK平臺(tái)給script的方法中的形參賦值
*/
public void test(String name)
{
    ScriptEngineManager sem = new ScriptEngineManager();
    /*
     *sem.getEngineByExtension(String extension)參數(shù)為js
     sem.getEngineByMimeType(String mimeType) 參數(shù)為application/javascript 或者text/javascript
     sem.getEngineByName(String shortName)參數(shù)為js或javascript或JavaScript
     */
    ScriptEngine se = sem.getEngineByName("js");
    try
    {
     String script = "function say(){ return 'hello,'"+name+"; }";
     se.eval(script);
     Invocable inv2 = (Invocable) se;
     String res=(String)inv2.invokeFunction("say",name);
     System.out.println(res);
    }
    catch(Exception e)
    {
      e.printStackTrace();
    }
}

/*
* 演示如何將java中對(duì)象作為js中全局變量,同時(shí)演示將file類賦給腳本語(yǔ)言,并獲得其屬性。
*/
public void testScriptVariables()
{
    ScriptEngineManager sem=new ScriptEngineManager();
    ScriptEngine engine=sem.getEngineByName("js");
    File file=new File("c://1.txt");
    engine.put("f", file);
    try {
      engine.eval("println('path:'+f.getPath())");//無(wú)法使用alert方法
    } catch (ScriptException e) {
      e.printStackTrace();
    }
}

/*
* 演示如何在java中如何通過(guò)線程來(lái)啟動(dòng)一個(gè)js方法
*/
public void testScriptInterface() throws ScriptException
{
    ScriptEngineManager sem=new ScriptEngineManager();
    ScriptEngine engine=sem.getEngineByName("js");
    String script="var obj=new Object();obj.run=function(){println('test thread')}";
    engine.eval(script);
    Object obj=engine.get("obj");//獲取js中對(duì)象
    Invocable inv=(Invocable)engine;
    Runnable r=inv.getInterface(obj,Runnable.class);
    Thread t=new Thread(r);
    t.start();
}

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java字符與字符串操作技巧總結(jié)》、《Java數(shù)組操作技巧總結(jié)》、《Java數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Java編碼操作技巧總結(jié)》和《Java數(shù)據(jù)結(jié)構(gòu)與算法教程

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 關(guān)于Java日期工具類的編寫

    關(guān)于Java日期工具類的編寫

    這篇文章主要介紹了關(guān)于Java日期工具類的編寫,在Java開發(fā)中,經(jīng)常會(huì)遇到處理日期相關(guān)的數(shù)據(jù),那么今天我們來(lái)自己寫一個(gè)工具類,文中有詳細(xì)的實(shí)例代碼以及實(shí)現(xiàn)思路,需要的朋友可以參考下
    2023-05-05
  • Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解

    Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解

    這篇文章主要介紹了Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Spring Native實(shí)現(xiàn)0.059s啟動(dòng)一個(gè)SpringBoot項(xiàng)目

    Spring Native實(shí)現(xiàn)0.059s啟動(dòng)一個(gè)SpringBoot項(xiàng)目

    Spring Native是Spring框架的一個(gè)子項(xiàng)目,旨在提供一種將Spring應(yīng)用程序編譯為本地可執(zhí)行文件的方法,從而提高啟動(dòng)時(shí)間和資源效率,本文主要介紹了Spring Native實(shí)現(xiàn)0.059s啟動(dòng)一個(gè)SpringBoot項(xiàng)目,感興趣的可以了解一下
    2024-02-02
  • springboot植入pagerHelper的超詳細(xì)教程

    springboot植入pagerHelper的超詳細(xì)教程

    這篇文章主要介紹了springboot植入pagerHelper的超詳細(xì)教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • Java多態(tài)的全面系統(tǒng)解析

    Java多態(tài)的全面系統(tǒng)解析

    多態(tài)就是指程序中定義的引用變量所指向的具體類型和通過(guò)該引用變量發(fā)出的方法調(diào)用在編程時(shí)并不確定,而是在程序運(yùn)行期間才確定,即一個(gè)引用變量到底會(huì)指向哪個(gè)類的實(shí)例對(duì)象,該引用變量發(fā)出的方法調(diào)用到底是哪個(gè)類中實(shí)現(xiàn)的方法,必須在由程序運(yùn)行期間才能決定
    2022-03-03
  • 全方位解析key值不確定的json數(shù)據(jù)

    全方位解析key值不確定的json數(shù)據(jù)

    這篇文章主要介紹了全方位解析key值不確定的json數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • Java編程基礎(chǔ)元素-運(yùn)算符

    Java編程基礎(chǔ)元素-運(yùn)算符

    這篇文章主要介紹了Java編程基礎(chǔ)元素-運(yùn)算符,運(yùn)算符就是在用變量或常量進(jìn)行運(yùn)算時(shí),經(jīng)常需要用到的運(yùn)算符,Java?提供了豐富的運(yùn)算符,可分為算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符和位運(yùn)算符,下面來(lái)看具體的內(nèi)容介紹吧
    2022-01-01
  • springboot自定義過(guò)濾器的方法

    springboot自定義過(guò)濾器的方法

    這篇文章主要為大家詳細(xì)介紹了springboot自定義過(guò)濾器的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • java微信開發(fā)API第二步 獲取和回復(fù)消息

    java微信開發(fā)API第二步 獲取和回復(fù)消息

    這篇文章主要為大家詳細(xì)介紹了java微信開發(fā)API第二步,獲取消息和回復(fù)消息,感興趣的小伙伴們可以參考一下
    2016-06-06
  • spring-cloud入門之eureka-client(服務(wù)注冊(cè))

    spring-cloud入門之eureka-client(服務(wù)注冊(cè))

    本篇文章主要介紹了spring-cloud入門之eureka-client(服務(wù)注冊(cè)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01

最新評(píng)論