隨筆 - 170  文章 - 536  trackbacks - 0
          <2009年2月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          1234567

          常用鏈接

          我參與的團(tuán)隊(duì)

          隨筆分類(103)

          搜索

          •  

          積分與排名

          • 積分 - 414859
          • 排名 - 135

          最新評(píng)論

          閱讀排行榜

            為了實(shí)現(xiàn)工作流中對(duì)腳本的支持,簡(jiǎn)單的玩了一下 BeanShell,這個(gè)小小的嵌入式 Java 代碼解釋器可以將  Java 語(yǔ)言像動(dòng)態(tài)腳本一樣執(zhí)行,幾行命令,它就能把一段 Java 代碼給玩轉(zhuǎn)。

            工作流中有個(gè)這樣的簡(jiǎn)單案例,當(dāng)一筆單子金額大于 50萬(wàn)時(shí),應(yīng)該將任務(wù)分配給 Senior Agent 處理,否則交給 Junior Agent 處理,我們用 BeanShell 簡(jiǎn)單模擬這段腳本。

              public static void main(String[] args) throws Exception {
                  Interpreter i = new Interpreter();
                  i.set(”price”, 1000000);
                  i.set(”user”, “”);
                  i.eval(”if(price > 500000)\n” +
                          “user = \”SeniorAgent\”;\n” +
                          “else \n” +
                          “user = \”JuniorAgent\”;”);
                  System.out.println(i.get(”user”));
              } 

            運(yùn)行結(jié)果是打印出了:SeniorAgent

            可以看出,BeanShell 用非常動(dòng)態(tài)化的方式,完成了我們一個(gè)簡(jiǎn)單的案例的處理,這里,我們只需要將需要解析的 Java 語(yǔ)言的腳本交給 BeanShell 的 Interceptor,并把腳本中用到的參數(shù)值傳入,就可以了,最后,我們把運(yùn)算結(jié)果賦給一個(gè)變量,然后獲取變量結(jié)果,就可以了。

            看到 Developer Works 網(wǎng)站上有一篇 BeanShell 實(shí)現(xiàn)公式管理的文章:http://www.ibm.com/developerworks/cn/java/l-formula/index.html,可以參考一下。

          From:
          http://www.steadyxp.com/archives/851.html

          posted on 2009-02-26 09:56 steady 閱讀(3290) 評(píng)論(1)  編輯  收藏 所屬分類: Java

          FeedBack:
          # re: 簡(jiǎn)單的玩了下BeanShell 2009-02-26 11:48 隔葉黃鶯
          真要用 BeanShell 的話還不好 Groovy  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 东宁县| 赤壁市| 克拉玛依市| 兴文县| 通城县| 正镶白旗| 正蓝旗| 金阳县| 惠水县| 黑龙江省| 宁化县| 广昌县| 龙泉市| 涟水县| 天台县| 株洲市| 塔城市| 定西市| 广宗县| 策勒县| 屯留县| 前郭尔| 汉中市| 辽阳市| 二连浩特市| 旺苍县| 伊春市| 高台县| 辉县市| 平陆县| 沁阳市| 西和县| 沧州市| 江津市| 肃北| 寿阳县| 二连浩特市| 始兴县| 香格里拉县| 海伦市| 蓬安县|