咖啡伴侶

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

          java執行腳本語言javascript

          Posted on 2010-06-03 15:04 oathleo 閱讀(3407) 評論(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 追夢少年
          不錯啊!!

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

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

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

          2010-07-03 10:19 by FineReport——報表技術領跑者
          很好!頂了~
          主站蜘蛛池模板: 梅州市| 武功县| 永平县| 仙游县| 富裕县| 海南省| 宝应县| 韶山市| 仁化县| 宜章县| 韩城市| 邛崃市| 平塘县| 上犹县| 含山县| 牙克石市| 迁安市| 永胜县| 雷山县| 望江县| 商都县| 蓝山县| 嘉定区| 临夏县| 阜城县| 惠来县| 巧家县| 乌拉特中旗| 通河县| 镇安县| 伊宁县| 泰州市| 庄河市| 胶南市| 安图县| 关岭| 泾阳县| 德钦县| 广水市| 苍南县| 朝阳市|