国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Struts2標(biāo)簽嵌套以及遍歷雙層list

2019-11-08 02:00:18
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

今天碰到一個(gè)很有意思的問(wèn)題,就是需要用Struts 2的iterator標(biāo)簽來(lái)遍歷一個(gè)含有雙層List的嵌套。

首先我們從最基礎(chǔ)的說(shuō)起,用iterator標(biāo)簽遍歷一個(gè)List。

如果Action中有一個(gè)這樣的不為null的屬性:

[java] view plain copy PRint?private List<T> list;   private List<T> list;

那么在jsp中,就可以這樣來(lái)遍歷list:

[xhtml] view plain copy print?<s:iterator value=“l(fā)ist”>          <s:property value=“propertyNameOfObjectInList”></s:property>   </s:iterator>   <s:iterator value=”list”> <s:property value=”propertyNameOfObjectInList”></s:property> </s:iterator>

其中的propertyNameOfObjectInList是指list中對(duì)象的屬性名。

下面我們?cè)賮?lái)看稍微復(fù)雜一點(diǎn)的情況,那就是嵌套使用iterator標(biāo)簽。

假設(shè)我們的Action中有如下屬性:

[java] view plain copy print?private List<T> list1;  private List<T> list2;   private List<T> list1;private List<T> list2;

那么,我們可以在JSP頁(yè)面上這樣來(lái)遍歷:

[xhtml] view plain copy print?<s:iterator value=“l(fā)ist1”>      <s:property value=“propertyNameOfObjectInList”></s:property>      <s:iterator value=“l(fā)ist2” id=“inner”>          <s:property value=“#inner.propertyNameOfObjectInList”></s:property>       </s:iterator>  </s:iterator>  <s:iterator value=”list1”> <s:property value=”propertyNameOfObjectInList”></s:property> <s:iterator value=”list2” id=”inner”> <s:property value=”#inner.propertyNameOfObjectInList”></s:property> </s:iterator></s:iterator>

請(qǐng)注意,我們必須給里層的iterator標(biāo)簽加上一個(gè)id屬性,這樣,才能通過(guò)#id.propertyNameOfObjectInList來(lái)取得我們需要的值。

下面是遍歷雙層List的情況。

假設(shè)Action中有如下屬性:

[java] view plain copy print?private List<List<T>> list;   private List<List<T>> list;

那么,我們?cè)贘SP必須這樣來(lái)遍歷:

[xhtml] view plain copy print?<s:iterator value=“l(fā)ist”>      <s:iterator value=“top” id=“inner”>          <s:property value=“#inner.propertyNameOfObjectInList”></s:property>       </s:iterator>  </s:iterator>   <s:iterator value=”list”> <s:iterator value=”top” id=”inner”> <s:property value=”#inner.propertyNameOfObjectInList”></s:property> </s:iterator></s:iterator>

這種情況下,必須把內(nèi)層的iterator標(biāo)簽的value屬性設(shè)定為”top”!這個(gè)top就代表?xiàng)m敗H缓笤僦付╥d屬性,并用”#”作為前綴來(lái)取值。

我今天碰到的情況是這樣,在Action中:

[java] view plain copy print?private List<T> list1;  private List<List<T>> list2;   private List<T> list1;private List<List<T>> list2;

所以當(dāng)然就要這樣遍歷了:

[xhtml] view plain copy print?<s:iterator value=“l(fā)ist1”>      <s:property value=“propertyNameOfObjectInList”></s:property>       <s:iterator value=“l(fā)ist2”>          <s:iterator value=“top” id=“inner”>          <s:property value=“#inner.propertyNameOfObjectInList”></s:property>          </s:iterator>      </s:iterator>  </s:iterator>   <s:iterator value=”list1”> <s:property value=”propertyNameOfObjectInList”></s:property> <s:iterator value=”list2”> <s:iterator value=”top” id=”inner”> <s:property value=”#inner.propertyNameOfObjectInList”></s:property> </s:iterator> </s:iterator></s:iterator>

本文鏈接地址: http://www.psjay.com/Java-ee-struts-2-iterator-tag.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 稻城县| 汉寿县| 庆城县| 唐海县| 建湖县| 扎兰屯市| 绥化市| 湟源县| 淮阳县| 太仆寺旗| 武功县| 兴海县| 紫云| 闵行区| 都昌县| 上高县| 利川市| 惠东县| 苍南县| 苏尼特右旗| 会宁县| 平江县| 海阳市| 汉沽区| 霍山县| 潼南县| 天祝| 乌兰浩特市| 时尚| 凌源市| 南昌县| 莱州市| 柳林县| 敖汉旗| 崇左市| 德惠市| 尼木县| 库伦旗| 体育| 马公市| 航空|