Struts2学习笔记(八)——Struts2 控制标签
来源:互联网 发布:安卓windows xp镜像img 编辑:程序博客网 时间:2024/05/22 04:14
控制标签
Append
用于将多个集合拼接为一个新的集合,类似于List的addAll函数
静态实现对已知List的合并<s:append id=”newList”> <s:paramvalue=”{‘a1’,’a2’,’a3’}” /> <s:param value=”{‘a4’,’a5’,’a3’}”/></s:append>使用<s:append>和 <c:iterator>。也可以将多个Map拼接为一个新的Map,更可以将一个Map和一个List拼接起来,如:<s:append id=”newList”> <s:paramvalue=”{‘a1’,’a2’,’a3’}” /> <s:param value=”#{‘li’:’spring’,’wang’:’struts’}”/></s:append><table border="1" width="240"><s:iterator value="#newList" status="st"><tr <s:iftest="#st.odd">style="background-color:#bbbbbb"</s:if>> <td><s:property value="key"/></td> <td><s:property value="value"/></td></tr></s:iterator></table>
Generator
将指定字符串分割成多个子串,临时生成的多个子串可以使用Iterator进行迭代,类似于String的split函数,在jstl的function标签中有相同实现。
id:这是一个可选属性,指定id后,则生成的标签在pageContext属性中
count:这是一个可选属性,该属性指定生成集合中元素的总数,多余的丢弃
separator:这是一个必填属性,指定用于解析的分隔符
Merge
用于将多个集合拼接成一个新的集合,与append用法类似,区别是拼接后集合的顺序不同,如 {a1,a2,a3}和{b1,b2,b3}使用append拼接后是{a1,a2,a3,b1,b2,b3}; 而使用merge拼接后是 {a1,b1,a2,b2,a3,b3}
Sort
用于对集合进行排序,需要提供自己的Comparator,有用的属性是comparator:指定自定义的Comparator实例,需要实现java.util.Comparator接口; source, var:存放排序后结果。
<s:sort source="{'J2EE','Ajax','Spring2.0'}"comparator="#request.mycomparator"><s:iterator status="st"> <tr> <s:iftest="#st.odd">style="background-color:#bbbbbb"</s:if>> <td><s:property/></td> </tr></s:iterator>
Subset
用于截取集合的部分元素,形成新的集合 ,有用的属性是count source start decider。
count:可选属性,指定子集中元素的个数,默认取得源集合的所有元素
source:可选属性,指定源集合,如果不指定,默认取得valueStack栈顶的集合,一般都会指定
start:可选属性,指定从源集合的第几个元素开始截取,,默认从第一个元素(即start=0)开始
decider:可选属性,由开发者自己决定是否选中该元素
<%@ page contentType="text/html;charset=GBK" language="java"%><%@taglib prefix="s"uri="/struts-tags"%><html><head><title>使用s:subset标签截取集合元素</title></head><body><table border="1" width="200"><s:subset source="{'Java','Spring2.0','J2EE','Ajax','WebWork'}"start="1" count="3"><s:iterator status="st"><tr <s:iftest="#st.odd">style="background-color:#bbbbbb"</s:if>> <td><s:property/></td></tr></s:iterator></s:subset></table></body></html>
还可以自己决定选择标准,,使用步骤如下:
1. 实现SubsetIteratorFilter.Decider 接口 class MyDeciderimplements Decider
2. 在jsp中使用 <s:bean> 创建该类的对象 <s:bean id=”de” name=”lee.MyDecider” />
3. 对<s:subset decider=”#de”>
如下实例:
<%@ pagecontentType="text/html; charset=GBK" language="java"%><%@taglib prefix="s"uri="/struts-tags"%><html><head><title>使用s:subset标签截取集合元素</title></head><body><s:bean id="mydecider" name="lee.MyDecider"/> <table border="1" width="200"> <s:subset source="{'Java','Spring2.0','J2EE','Ajax','WebWork'}" decider="#mydecider"> <s:iterator status="st"> <tr <s:iftest="#st.odd">style="background-color:#bbbbbb"</s:if>> <td><s:property/></td> </tr> </s:iterator> </s:subset> </table></body></html>
- Struts2学习笔记(八)——Struts2 控制标签
- Struts2学习——(八)Struts2标签II
- J2EE系列之Struts2学习笔记(十六)--Struts2标签(数据标签、控制标签)
- Struts2学习笔记(八)
- struts2学习笔记之十二(控制标签)
- Struts2学习笔记八
- struts2学习笔记——标签
- Struts2学习笔记——StrutsTags(标签)
- Struts2学习笔记(7)-----Struts2的控制标签iterator,if...else的用法
- Struts2学习笔记(九)——数据标签
- Struts2学习笔记(四)——Struts标签相关
- struts2标签学习笔记
- struts2标签学习笔记
- Struts2标签学习笔记
- struts2标签学习笔记
- Struts2学习——1800Struts控制标签
- struts2学习笔记之八(result)
- struts2学习笔记(八)国际化
- BLOCKING
- man手册的使用
- web.xml的加载顺序
- Mysql 复制 配置详解, Replication with Master/Slave
- Android:打包so文件
- Struts2学习笔记(八)——Struts2 控制标签
- 开源项目
- Android 源码目录结构
- 问题:SVN使用碰到的问题
- 网上订火车票的方法(Firefox+Firebug)有最新补充 2012.1.12于北京
- PSO工具箱对于高维函数如此弱?
- 移植cocos2d-x 游戏从Android平台到IOS平台分辨率问题及解决办法
- VS 2008 打开 WebApplication 报 System.Runtime.InteropServices.COMException 错误
- unix: 从文本中截取指定匹配行(sed的用法)