Struts2的标签库整理

来源:互联网 发布:centos 7 yum iso 编辑:程序博客网 时间:2024/06/05 08:04

文章转载至:http://blog.csdn.net/chen_zw/article/details/8161230

头声明:<%@ taglib uri =”/struts-tags” prefix =”s” %>

Struts2标签库可以分为5类:
一. 逻辑控制标签
1.条件标签:

<s:if test="#request.username=='admin'">     您是admin!   </s:if>  <s:elseif test="#request.username=='manager'">     您是manager!  </s:elseif>  <s:else>     您没有身份!  </s:else>  

test:条件判定语句,值为boolean类型。

  1. 迭代标签:;用于遍历集合(java.util.Collection)或者枚举值(java.util.Iterator)类型的对象。

遍历普通List、数组

//后台存放数据到list中  List<String > list = newArrayList<String>();  list.add("aaa");list.add("bbb"); list.add("ccc");  <!-- 用iterator标签遍历list -- >  <s:iterator value="list"var="v">      <s:property value="v"/><br>  </s:iterator>   或者:  <s:iteratorvalue="list">       <s:property/><br>   </s:iterator>  

遍历对象List、数组

<s:iterator value="users" id="us">     <!--可以这样: <s:property value="#us.name"/>  -->      <s:property value="name"/>      <s:property value="email"/><br/>  </s:iterator>   

status属性的应用

<s:iterator value="users" id="us" status="u">      序列号: <s:property value="#u.index"/>       姓名:  <s:property value="name"/>       邮件:  <s:property value="email"/>       是否第一条:  <s:property value="#u.first"/>       是否最后一条:<s:property value="#u.last"/>       是否偶数行:  <s:property value="#u.even"/>       是否奇数行:  <s:property value="#u.odd"/>      当前行数:    <s:property value="#u.count"/>  </s:iterator>   

id:指定集合中元素在值栈中的名称。
value:指定迭代的迭代体。
var:指向值栈中的值。
status:该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置。

二、数据输出标签
(1)action标签
标签用于在jsp页面中直接调用Action

<s:action name="loginAction"  namespace="/user" ignoreContextParam="false"  executeResult="true" >      <s:param name="userName" value="'张三'"></s:param>    </s:action>  

name:struts.xml中指定Action的名称
executeResult:指定是否将Action的处理结果包含到本页面中.默认值为false(即不包含)
ignoreContextParam:指定该页面的请求参数是否需要传入调用的Action中,默认值是false(即传入参数)

注意:是以request方式的值的,而不是以参数传值,所以request.getParameter(“”)会获取不到值,通过request.getAttribute(“”)方式可以获取到。

(2)date标签
标签用以格式化日期并显示

<s:date name="user.birth" format="yyyy-MM-dd HH:ss:mm"nice="false"/>   

name:表示要输出的日期对象。

format:输出的日期格式。

nice:指定是否输出指定日期与当前时刻之间的时差。若nice=”true”,则format属性失效,只输出当前时刻与指定日期间的间隔;若nice=“false”,则是输出指定日期。