<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 1.14 函數調用 Beetl內置了少量實用函數,可以在Beetl任何地方調用。如下例子是調用date 函數,不傳參數情況下,返回當前日期 ```javascript <% var date = date(); var len = strutil.length("cbd"); println("len="+len); %> ``` 注意函數名支持namespace方式,因此代碼第3行調用的函數是strutil.length 定義beetl的方法非常容易,有三種方法 - 實現Function類的call方法,并添加到配置文件里,或者顯示的通過代碼注冊registerFunction(name,yourFunction) - 可以直接調用registerFunctionPackage(namespace,yourJavaObject),這時候yourJavaObject里的所有public方法都將注冊為Beetl方法,方法名是namespace+"."+方法名 - 可以直接寫模板文件并且以html作為后綴,放到root/functions目錄下,這樣此模板文件自動注冊為一個函數,其函數名是該模板文件名。這種方法很少人用,詳情請參考高級用法 ---- Beetl內置函數請參考附錄,以下列出了常用的函數(可以從源碼org.beetl.ext.tag.fn下找到其實現Function) - **date** 返回一個java.util.Date類型的變量,如 date() 返回一個當前時間(對應java的java.util.Date); ${date( "2011-1-1" , "yyyy-MM-dd" )} 返回指定日期,date(ms),指定一個毫秒數。相當于調用java.util.Date(ms) - **print** 打印一個對象 print(user.name); - **println** 打印一個對象以及回車換行符號,回車換號符號使用的是模板本身的,而不是本地系統的.如果僅僅打印一個換行符,則直接調用println() 即可 - **nvl** 函數nvl,如果對象為null,則返回第二個參數,否則,返回自己 nvl(user,"不存在") - **isEmpty** 判斷變量或者表達式是否為空,變量不存在,變量為null,變量是空字符串,變量是空集合,變量是空數組,此函數都將返回true - **isNotEmpty** 同上,判斷對象是否不為空 - **has** 變量名為參數,判斷是否存在此"全局變量",如 has(userList),類似于1.x版本的exist("userList"),但不需要輸入引號了.注意,has和isEmpety 判斷的是從java傳到模板的全局變量,而不是臨時變量 - **hasAttribute** 測試目標對象是否有此屬性,hasAttribute(user,"name") - **assert** 如果表達式為false,則拋出異常 - trim 截取數字或者日期,返回字符,如trim(12.456,2)返回"12.45",trim(date,'yyyy')返回"2017" - **trunc** 截取數字,保留指定的小數位,如trunc(12.456,2) 輸出是12.45.不推薦使用,因為處理float有問題,兼容原因保留了 - **decode** 一個簡化的if else 結構,如 decode(a,1,"a=1",2,"a=2","不知道了"),如果a是1,這decode輸出"a=1",如果a是2,則輸出"a==2", 如果是其他值,則輸出"不知道了" - **debug** 在控制臺輸出debug指定的對象以及所在模板文件以及模板中的行數,如debug(1),則輸出1 [在3行@/org/beetl/core/lab/hello.txt],也可以輸出多個,如debug("hi",a),則輸出hi,a=123,[在3行@/org/beetl/core/lab/hello.txt] - **parseInt** 將數字或者字符解析為整形 如 parseInt("123"); - **parseLong** 將數字或者字符解析為長整形,parseInt(123.12); - **parseDouble** 將數字或者字符解析為浮點類型 如parseDouble("1.23") - **range** 接收三個參數,初始值,結束值,還有步增(可以不需要,則默認為1),返回一個Iterator,常用于循環中,如for(var i in range(1,5)) {print(i)},將依次打印1234. - **flush** 強制io輸出。 - **json**,將對象轉成json字符串,如 var data = json(userList) 可以跟一個序列化規則 如,var data = json(userList,"[*].id:i"),具體參考?[https://git.oschina.net/xiandafu/beetl-json](https://git.oschina.net/xiandafu/beetl-json) - **pageCtx** ,僅僅在web開發中,設置一個變量,然后可以在頁面渲染過程中,調用此api獲取,如pageCtx("title","用戶添加頁面"),在其后任何地方,可以pageCtx("title") 獲取該變量 - **type.new** 創建一個對象實例,如 var user = type.new("com.xx.User"); 如果配置了IMPORT_PACKAGE,則可以省略包名,type.new("User") - **type.name** 返回一個實例的名字,var userClassName = type.name(user),返回"User" - **global** 返回一個全局變量值,參數是一個字符串,如 var user = global("user_"+i); - **cookie** 返回指定的cookie對象 ,如var userCook = cookie("user"),allCookies = cookie();
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看