在struts2中,用的是s标记,先在jsp文件中引入标记:
<%@ taglib prefix="s" uri="/struts-tags"%>

<s:a href=""></s:a>-----超链接,类似于html里的<a></a>

<s:if test=""></s:if>
 <s:elseif test=""></s:elseif>
 <s:else></s:else>-----这3个标签一起使用,表示条件判断

<s:checkbox></s:checkbox>-----复选框
<s:checkboxlist list="#{1:'游戏',2:'打飞机',3:'看电影',4:'LOL'}" name="hobby" value="{4,3}"></s:checkboxlist>--复选框集合

<s:radio list="dogs" listKey="id" listValue="name" name="rdogid"></s:radio>-----单选按钮

<s:select list="dogs" listKey="id" listValue="name" name="dogid"></s:select><br> --下拉列表

<s:select list="#{1:'长沙',2:'湘潭',3:'邵阳'}" name="area" value="2"></s:select>

<s:iterator value="" var="">-----用于遍历集合

<s:iterator value="dogs" var="d" status="sta">
<s:property value="#d.name"/>--
<s:property value="#sta.index"/>--<!-- 索引 -->
<s:property value="#sta.count"/>--<!-- 个数 -->
<s:property value="#sta.even"/>--<!-- 是否是偶数行 -->
<s:property value="#sta.odd"/>--<!-- 是否是奇数行 -->
<s:property value="#sta.first"/>--<!-- 是否是第一行 -->
<s:property value="#sta.last"/><!-- 是否是最后一行 -->
<s:if test="#sta.even">偶数行</s:if><--常在隔行换色用到-->
<s:elseif test="#sta.odd">奇数行</s:elseif>
<br>
</s:iterator>

</s:iterator>

<s:set name="sex" value="'男'" ></s:set>-- 没有指定范围,放到ActionContext

<s:date name="receiveTime" format="yyyy-MM-dd HH:MM" />-----显示日期格式

<s:submit></s:submit>-----提交按钮 
 <s:reset></s:reset>-----重置按钮

<s:password></s:password>-----密码输入框

<s:table></s:table>-----表格

<s:token></s:token>-----拦截器
<s:tree></s:tree>-----树

<s:updownselect list=""></s:updownselect>-----多选择框

<s:treenode label=""></s:treenode>-----树的结构

<s:debug></s:debug>-----显示值栈里信息
 <s:div></s:div>-----表示一个块,类似于html的<div></div>

<s:include value=""></s:include>-----包含一个输出,servlet或jsp页面

<s:bean name="com.accp.entity.Dog" var="dd"> 在页面创建一个实体类
<s:param name="id" value="200"></s:param>
<s:param name="name" value="'旺财'"></s:param>
</s:bean>

<s:property/>-----得到'value'的属性

标签不同情况下取值说明

取action中的普通属性:<s:property value="sex"/>
取action中的对象:<s:property value="user"/>
取action中的对象的属性:<s:property value="user.name"/>
调用action中对象的普通方法:<s:property value="user.sum(10,20)"/>
调用action中对象里面对象的属性:<s:property value="user.dog.name"/>
<hr/>
取action中静态的属性:<s:property value="@com.accp.action.OgnlAction@COUNTRY"/>
取user中的静态属性:<s:property value="@com.accp.entity.User@PI"/>
调用action中的静态方法:<s:property value="@com.accp.action.OgnlAction@hello()"/>
调用user中的静态方法:<s:property value="@com.accp.entity.User@sum('hello',' ff')"/>
调用java api中静态方法:<s:property value="@java.lang.Math@max(1,2)"/>
调用sysout打印方法:<s:property value="@java.lang.System@out.println('hello oyf')"/>
<hr>
取出list集合中的一个元素:<s:property value="list[1].name"/>
取出list集合中一个user对象的狗的名字:<s:property value="list[1].dog.name"/>
取出list集合中所有user的name:<s:property value="list.{name}"/>
取出list集合所有user的dog:<s:property value="list.{dog}"/>
取出list集合所有user的dog的名字:<s:property value="list.{dog.name}"/>
调用list集合中user的方法<s:property value="list[1].sum(1,2)"/>
调用list的方法:<s:property value="list.add(new com.accp.entity.User())"/>
调用list的方法:<s:property value="list.size()"/>
<hr/>
取出set集合中的一个元素:<s:property value="set.iterator().next().name"/>
取出set集合中某个user的dog的名字:<s:property value="set.iterator().next().dog.name"/>
取出set集合中所有user的name:<s:property value="set.{name}"/>
取出set集合中所有user的dog的name:<s:property value="set.{dog.name}"/>
调用set集合中user的方法:<s:property value="set.iterator().next().sum(10,20)"/>
调用set的方法:<s:property value="set.clear()"/>
调用set的方法:<s:property value="set.size()"/>
<hr>
取出map集合中的一个元素:<s:property value="map['u1'].name"/>
取出map集合中的一个元素:<s:property value="map.u1.name"/>
取出map集合所有的key:<s:property value="map.keys"/>
取出map集合所有的value:<s:property value="map.values"/>
<hr>
筛选集合中的数据(?:可以返回多个值):<s:property value="list.{?#this.id>1}.{id}"/>
筛选集合中的数据(^:返回一个值):<s:property value="list.{^#this.id>1}.{id}"/>
筛选集合中的数据($:可以返回多个值):<s:property value="list.{$#this.id>1}.{id}"/>
筛选集合中的数据(?:可以返回多个值):<s:property value="list.{?#this.id>1 and #this.name=='屌丝1'}.{id}"/>
筛选集合中的数据(?:可以返回多个值):<s:property value="list.{?#this.id>0 or #this.name=='屌丝2'}.{id}"/>

struts2常用标签使用说明的更多相关文章

  1. Struts2页面开发中常用标签使用说明

    1. Struts2页面开发中常用标签使用说明 1.1.往action里传值的使用方式: <input name="userName" type="text&quo ...

  2. Struts2常用标签

    Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...

  3. struts2常用标签详解(申明:来源于网络)

    struts2常用标签详解(申明:来源于网络) 地址:http://blessht.iteye.com/blog/1184960

  4. Struts2常用标签总结(申明:来源于网络)

    Struts2常用标签总结(申明:来源于网络) 地址:http://jimingsong.iteye.com/blog/1582939

  5. Struts2常用标签总结

    Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...

  6. struts2常用标签之数据标签

    数据标签1  property标签  property标签的主要属性:  value:用来获取值的OGNL表达式,如果value属性值没有指定,那么将会被设定为top,也就是返回位于值栈最顶端的对象. ...

  7. struts2 常用标签

    版权声明:本文为博主原创文章,未经博主允许不得转载. Struts2可以将所有标签分成3类: 准备工作:需要在JSP页面引入标签库 <%@ taglib prefix="s" ...

  8. STRUTS2 常用标签的使用

    <body> <h1>s:if标签的用法</h1> <s:set name="price" value="25"> ...

  9. struct2常用标签

    Struts2常用标签总结 一 介绍 1.Struts2的作用    Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了 ...

随机推荐

  1. Flash Media Server 4.0 破解 注册

    Adobe Flash Media Interactive Server 3.5s/n:1373-5047-2985-0514-5175-0098 s/n: 1373-5632-4666-9521-8 ...

  2. ZOJ 3494 BCD Code(AC自动机+数位DP)

    BCD Code Time Limit: 5 Seconds      Memory Limit: 65536 KB Binary-coded decimal (BCD) is an encoding ...

  3. 【项目经验】之——Controller向View传值

    我们的ITOO进行了一大部分了,整体上来说还是比较顺利的.昨天进行了一次验收,大体上来说,我们新生这块还是可以的.不仅仅进行了学术上的交流,还进行了需求上的更新.也正是由于这一次,我有了解到了一个新的 ...

  4. WPF datagrid 动态增加列

    DataGrid动态增加列 <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.m ...

  5. css布局1

    body <body> <header id='title'> <h1>Holla</h1> </header> <div id='c ...

  6. iOS10 UI教程基改变视图的外观与视图的可见性

    iOS10 UI教程基改变视图的外观与视图的可见性 视图是应用程序的界面,是用户在屏幕上看到的对象.用户可以通过触摸视图上的对象与应用程序进行交互,所以视图界面的优劣会直接影响到了客户体验的好坏.和视 ...

  7. 端口偷窃(Port Stealing)技术

    端口偷窃(Port Stealing)技术   该技术主要用于局域网中间人攻击中,尤其目标计算机采用静态ARP后,导致ARP欺骗无效.   背景知识:路由器为了方便转发数据包,会在内部记录每个接口和M ...

  8. [工作中的设计模式]观察者模式observer

    一.模式解析 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象.这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己. 观察者模式又叫订阅发布模式, ...

  9. git 学习笔记2--How to create/clone a repository

    1. create/clone 1.1 create 针对已经存在的目录创建一个repository,使用以下命令: git init Initialized empty Git repository ...

  10. Python学习笔记05

    类 继承:单继承,多继承 方法:self开头,类似C#中的this 属性:直接写变量 对象:使用类名() 构造 __init__():构造函数 #多继承 class A(object): ...... ...