posts - 495,  comments - 11,  trackbacks - 0

          OGNL的集合操作

          如果需要一個集合元素的時候(例如List對象或者Map對象),可以使用OGNL中同集合相關(guān)的表達式。

          可以使用如下代碼直接生成一個List對象:

          {e1,e2,e3…}

          OGNL表達式中,直接生成了一個List對象,該List對象中包含3個元素:e1e2e3。如果需要更多的元素,可以按照這樣的格式定義多個元素,多個元素之間使用逗號隔開。

          如下代碼可以直接生成一個Map對象:

          #{key1:value1,key2:value2,…}


          Map
          類型的集合對象,使用key-value格式定義,每個key-value元素使用冒號標(biāo)識,多個元素之間使用逗號隔開。

          對于集合類型,OGNL表達式可以使用innot in兩個元素符號。其中,in表達式用來判斷某個元素是否在指定的集合對象中;not in判斷某個元素是否不在指定的集合對象中,如代碼8.3所示。

          代碼8.3使用OGNL集合操作符


          muhahaha


          boo


          muhahaha


          boo

          除了innot in之外,OGNL還允許使用某個規(guī)則獲得集合對象的子集,常用的有以下3個相關(guān)操作符。
          >>>
          ?
          :獲得所有符合邏輯的元素。
          >>>
          ^
          :獲得符合邏輯的第一個元素。
          >>>
          $
          :獲得符合邏輯的最后一個元素。

          例如代碼:

          person.relatives.{? #this.gender == 'male'}

          該代碼可以獲得person的所有性別為malerelatievs集合。

          posted on 2009-08-15 17:25 jadmin 閱讀(159) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 浮山县| 晋城| 十堰市| 宜章县| 垫江县| 邹城市| 霍山县| 包头市| 宁强县| 涡阳县| 玉树县| 商南县| 昌吉市| 高青县| 义马市| 石阡县| 会东县| 宁南县| 定陶县| 内黄县| 开原市| 宜城市| 枞阳县| 胶南市| 炉霍县| 壶关县| 股票| 蒲城县| 库尔勒市| 奇台县| 定安县| 汤阴县| 绍兴县| 贵德县| 南澳县| 平乐县| 苏尼特左旗| 博野县| 呼伦贝尔市| 江安县| 柏乡县|