咖啡伴侶

          呆在上海
          posts - 163, comments - 156, trackbacks - 0, articles - 2

          java執行腳本語言javascript

          Posted on 2010-06-03 15:04 oathleo 閱讀(3403) 評論(3)  編輯  收藏 所屬分類: Java
          version jdk1.6

          很早就聽說了這個功能一直沒仔細看看,嘗試了下 功能不錯!

              public static void main(String[] args) {
                  ScriptEngineManager sem = new ScriptEngineManager();
                 
                  //添加上下文綁定數據
                  SimpleBindings bindings = new SimpleBindings();
                  bindings.put("aaa_av", new Double(10000.1));
                  bindings.put("bbb_av", new Double(20000.2));
                 
                  ScriptEngine engine = sem.getEngineByExtension("js");
                  engine.setBindings(bindings, ScriptContext.ENGINE_SCOPE);
                  try{
                      //直接解析
                      Object res = engine.eval(" res =  Math.max(aaa_av , bbb_av) + aaa_av");
                      System.out.println(res);
                     
                     
                      //創建腳本
                      String script = "function getMax() "
                          + "{ return Math.max(aaa_av , bbb_av)}";
                      //執行腳本
                      engine.eval(script);
                      Invocable inv = (Invocable) engine;
                      //執行方法并傳遞參數
                      Object obj = inv.invokeFunction("getMax", null);
                      //打印結果
                      System.out.println(obj);

                  }catch(Exception ex){
                      ex.printStackTrace();
                  }
              }

          Feedback

          # re: java執行腳本語言javascript  回復  更多評論   

          2010-06-06 23:09 by 追夢少年
          不錯?。。?/div>

          # re: java執行腳本語言javascript  回復  更多評論   

          2010-06-13 00:44 by zcl
          不適用!

          # re: java執行腳本語言javascript  回復  更多評論   

          2010-07-03 10:19 by FineReport——報表技術領跑者
          很好!頂了~
          主站蜘蛛池模板: 宾川县| 抚州市| 兖州市| 乌海市| 桐乡市| 沿河| 漠河县| 阳城县| 孟州市| 扶绥县| 紫金县| 红河县| 万荣县| 噶尔县| 阜平县| 涿鹿县| 望江县| 建阳市| 汉源县| 玉门市| 武强县| 五台县| 古交市| 德惠市| 前郭尔| 临沧市| 萨迦县| 寿宁县| 融水| 神农架林区| 景宁| 台州市| 阿尔山市| 石河子市| 富蕴县| 呼和浩特市| 吉安市| 达州市| 深水埗区| 高雄县| 阿鲁科尔沁旗|