?generator標(biāo)簽
??????? 使用generator標(biāo)簽可以將指定字符串按指定分隔符分成多個(gè)子串,臨時(shí)生成的多個(gè)子串可以使用iterator標(biāo)簽來迭代輸出??梢赃@樣理解:generator將一個(gè)字符串轉(zhuǎn)化成一個(gè)集合。在該標(biāo)簽的標(biāo)簽體內(nèi),整個(gè)臨時(shí)生成的集合將位于ValueStack的頂端,蛋一旦該標(biāo)簽結(jié)束,該集合將被移出ValueStack
???????
generator標(biāo)簽的屬性:
?
?
- ?? count :可選屬性,該屬性指定生成集合中元素的總數(shù)。
- ? separator :必填屬性,指定用于解析字符串的分隔符。
- ?? val:必填屬性,指定被解析的字符串。
- ?converter:可選屬性,指定一個(gè)轉(zhuǎn)換器,該轉(zhuǎn)換器負(fù)責(zé)將集合匯總的每個(gè)字符串轉(zhuǎn)換成對象
- ?? id:可選屬性,如果指定了該屬性,則將生成的集合放在pageContext屬性中
?<!-- 使用s:generator標(biāo)簽將一個(gè)字符串解析成集合-->
<s:generator val = " 'Spring2.0寶典,輕量級J2EE企業(yè)應(yīng)用實(shí)戰(zhàn),基于J2EE的Ajax寶典' "
????? separator = ",">
<!-- 在generator標(biāo)簽內(nèi),該集合位于valuestack的棧頂,故此處迭代就是臨時(shí)生成的集合-->
<s: iterator status = "st ">
???? <!-- 根據(jù)當(dāng)前迭代項(xiàng)索引的奇偶來決定是否使用CSS樣式-->
???? < tr <s:if?? test="#st.odd" > style ="background-color:#bbbbbb"</s:if> >
????????????? <td><s:property/></td>
????? </tr>
</s:iterator>
</s:generator>
下面代碼使用generator標(biāo)簽,使用了count和id屬性,如果指定了count屬性,意味著集合中最多只能包含count個(gè)元素(就是前count個(gè)元素),指定了id屬性,就可以將臨時(shí)生成的集合放置到pageContext屬性中。代碼如下:
<s:generator val = " 'Spring2.0寶典,輕量級J2EE企業(yè)應(yīng)用實(shí)戰(zhàn),基于J2EE的Ajax寶典' "
????? separator = ","??? id="bookes"? count="2"/>
<%
???????? java.util.Iterator? i? =? (java.util.Iterator)pageContext.getAttribute("bookes") ;
???????? while( i.hasNext() ) {
???????? String s = (String) i.next(); %>
???????? <tr><td><%=s%></td></tr>
????????? <%}
%>
?
?
?
一下是1樓提出錯(cuò)誤的代碼:執(zhí)行后的結(jié)果:
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

