posts - 495,  comments - 11,  trackbacks - 0

          OGNL的集合操作

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

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

          {e1,e2,e3…}

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

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

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


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

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

          代碼8.3使用OGNL集合操作符


          muhahaha


          boo


          muhahaha


          boo

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

          例如代碼:

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

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

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

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


          網站導航:
           
          主站蜘蛛池模板: 韩城市| 虎林市| 桃园市| 行唐县| 个旧市| 卫辉市| 石屏县| 于田县| 阿拉善左旗| 保定市| 安化县| 岚皋县| 吉木乃县| 紫云| 怀来县| 卓资县| 栾城县| 溧阳市| 九龙坡区| 广东省| 原平市| 靖边县| 平乐县| 宁城县| 武穴市| 界首市| 图木舒克市| 浙江省| 安西县| 邹城市| 刚察县| 黄山市| 潼南县| 阿瓦提县| 绥阳县| 沙河市| 磐石市| 江都市| 克山县| 绥棱县| 梨树县|