struts2标签小结

14年前
set标签
 <!-- struts2标签生成一个list对象 并迭代-->
 <s:set name="list" value="{'liyumei','zhengzihui','ivy','tom'}"></s:set>
 <s:iterator value="#list" id="n"><br/>
 <s:property value="n"/>
 </s:iterator>
 
 <!-- struts2标签生成一个Map对象 并迭代 -->
 <s:set name="list2" value="#{'liyumei':'23','zhengzihui':'22'}"></s:set>
 <s:iterator value="#list2" id="n">
 <s:property value="key"/>=<s:property value="value"/><br/>
 </s:iterator>
 <!-- 以上特别注意的地方:直接生成Map对象的时候写值要加上‘#’而生成list则不需要 -->
if elseif else 标签
 <!-- if else if else 语法-->
 <s:if test="表达式">标签体</s:if>
 <s:elseif test="表达式">标签体</s:elseif>
 <s:else>标签体</s:else>
<!-- example -->

<s:set name="age" value="45"></s:set>
<s:if test="#age>55">老年</s:if>
<s:elseif test="#age>35">中年</s:elseif>
<s:else>青年</s:else>

注意:使用set标签注意的地方,在使用过程中发现<s:set name="age" value="45"></s:set>取出来就是数字类型的。<s:set name="name" value="abc"></s:set>如果这样写想要取到name是取不到的,想要取到要在abc外面加''.也就是这样写<s:set name="name" value="'abc'"></s:set>
append标签merge标签
都是将多个集合对象拼接起来组成新的集合。两者的区别在于不同的拼接方法。
append:第一个集合第一个元素,第一个集合第二个元素。。。第二个集合第一个元素,第二个集合第二个元素
merge:第一个集合第一个元素,第二个集合第一个元素,第一个集合第二个元素,第二个集合第二个元素。。。
generator标签
将字符串分割成多个子字符串(个人觉得类似于split()
action标签
直接调用一个action,并且可获得返回的结果
<s:action name="login" executeResult="true"></s:action>
 executeResult表示是否把结果保存在本页面
(个人觉得类似于jsp动态包含。包含了它的结果)
bean标签
创建一个java对象
<s:bean name="action.UserInfo" id="info">
 <s:param name="userName" value="'ivy'"></s:param>
 <s:param name="password" value="'liyumeiivy'"></s:param>
</s:bean>
name=<s:property value="#info.userName"/><br/>
password=<s:property value="#info.password"/>
date 标签
格式化输出一个日期
property标签用于输出
<s:property value="userName"/>
一次创建多个复选框
<!--  利用Map创建-->
<s:checkboxlist list="#{'1':'ivy','2':'tom','3':'多多'}" name="homeperson" label="家庭成员" listKey="key" listValue="value">
</s:checkboxlist>
也可以用其他的方式创建多个复选框 list....
生成一个单行文本框和下拉列表的组合
<s:combobox list="'java','html','php'" label="课程"  labelposition="top" size="20" maxlength="12" name="course"></s:combobox>