<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    HelloWorld 善戰者,求之于勢,不責于人;故能擇人而任勢。

    知止而后有定,定而后能靜,靜而后能安,安而后能慮,慮而后能得。物有本末,事有終始。知所先后,則近道矣。

      BlogJava :: 首頁 ::  :: 聯系 ::  :: 管理 ::
      167 隨筆 :: 1 文章 :: 40 評論 :: 0 Trackbacks

    import java.io.File;
    import javax.script.Invocable;
    import javax.script.ScriptEngine;
    import javax.script.ScriptEngineManager;
    import javax.script.ScriptException;

    public class ScriptTest {
     public static void main(String[] args) throws Exception {
      ScriptEngineManager manager = new ScriptEngineManager();
      ScriptEngine engine = manager.getEngineByName("JavaScript");
      testScriptVariables(engine);// 演示如何暴露Java對象為腳本語言的全局變量
      testInvokeScriptMethod(engine);// 演示如何在Java中調用腳本語言的方法
      testScriptInterface(engine);// 演示腳本語言如何實現Java的接口
      testUsingJDKClasses(engine);// 演示腳本語言如何使用JDK平臺下的類
     }

     public static void testScriptVariables(ScriptEngine engine)
       throws ScriptException {
      File file = new File("e:/test/aaa.txt");
      engine.put("f", file);
      engine.eval("println('Total Space:'+f.getTotalSpace())");
     }

     public static void testInvokeScriptMethod(ScriptEngine engine)
       throws Exception {
      String script = "function hello(name) { return 'Hello,' + name;}";
      engine.eval(script);
      Invocable inv = (Invocable) engine;
      String res = (String) inv.invokeFunction("hello", "Scripting");
      System.out.println("res:" + res);
     }

     public static void testScriptInterface(ScriptEngine engine)
       throws ScriptException {
      String script = "var obj = new Object(); obj.run = function() { println('run method called'); }";
      engine.eval(script);
      Object obj = engine.get("obj");
      Invocable inv = (Invocable) engine;
      Runnable r = inv.getInterface(obj, Runnable.class);
      Thread th = new Thread(r);
      th.start();
     }

     public static void testUsingJDKClasses(ScriptEngine engine)
       throws Exception {
      // Packages是腳本語言里的一個全局變量,專用于訪問JDK的package
      String js = "function doSwing(t){var f=new Packages.javax.swing.JFrame(t);f.setSize(400,300);f.setVisible(true);}";
      engine.eval(js);
      Invocable inv = (Invocable) engine;
      inv.invokeFunction("doSwing", "Scripting Swing");
     }
    }



    </script>

    posted on 2007-11-16 09:32 helloworld2008 閱讀(553) 評論(0)  編輯  收藏 所屬分類: java - 腳本
    主站蜘蛛池模板: 久久久亚洲欧洲日产国码aⅴ| 亚洲另类自拍丝袜第五页| 永久看日本大片免费35分钟| 国产成人精品日本亚洲网址 | 黄色网址免费大全| 亚洲AV无码一区二区三区鸳鸯影院| 亚洲国产日韩成人综合天堂 | 3344永久在线观看视频免费首页| jiz zz在亚洲| 中文字幕精品亚洲无线码一区| 18禁黄网站禁片免费观看不卡| 在线视频亚洲一区| 亚洲视频在线播放| 国产成人精品高清免费| 99re免费99re在线视频手机版| 国产成人亚洲精品播放器下载| 久久亚洲精品人成综合网| 四虎影视精品永久免费| 午夜免费福利视频| 特黄特色的大片观看免费视频| 亚洲成a人片在线观看中文!!!| 亚洲国产精品无码久久久久久曰| 亚洲免费视频一区二区三区| 最近最好最新2019中文字幕免费| 亚洲精品乱码久久久久久蜜桃不卡 | 久久免费区一区二区三波多野| 亚洲精品欧美综合四区| 全部免费国产潢色一级| 在线免费观看亚洲| 中文字幕不卡免费视频| 亚洲AV无码成人网站在线观看| 91亚洲国产成人精品下载| 国产亚洲视频在线播放| 免费无遮挡无码永久在线观看视频| 最近最新高清免费中文字幕| a级毛片黄免费a级毛片| 特级毛片爽www免费版| 久久综合亚洲色hezyo| 亚洲精品国产日韩| 亚洲日韩乱码中文无码蜜桃臀| 亚洲人成人网站色www|