struts2常用标签使用说明
在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常用标签使用说明的更多相关文章
- Struts2页面开发中常用标签使用说明
1. Struts2页面开发中常用标签使用说明 1.1.往action里传值的使用方式: <input name="userName" type="text&quo ...
- Struts2常用标签
Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...
- struts2常用标签详解(申明:来源于网络)
struts2常用标签详解(申明:来源于网络) 地址:http://blessht.iteye.com/blog/1184960
- Struts2常用标签总结(申明:来源于网络)
Struts2常用标签总结(申明:来源于网络) 地址:http://jimingsong.iteye.com/blog/1582939
- Struts2常用标签总结
Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...
- struts2常用标签之数据标签
数据标签1 property标签 property标签的主要属性: value:用来获取值的OGNL表达式,如果value属性值没有指定,那么将会被设定为top,也就是返回位于值栈最顶端的对象. ...
- struts2 常用标签
版权声明:本文为博主原创文章,未经博主允许不得转载. Struts2可以将所有标签分成3类: 准备工作:需要在JSP页面引入标签库 <%@ taglib prefix="s" ...
- STRUTS2 常用标签的使用
<body> <h1>s:if标签的用法</h1> <s:set name="price" value="25"> ...
- struct2常用标签
Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了 ...
随机推荐
- Lucene.net 全文检索 盘古分词
lucene.net + 盘古分词 引用: 1.Lucene.Net.dll 2.PanGu.Lucene.Analyzer.dll 3.PanGu.HighLight.dll 4.PanGu.dll ...
- Ubuntu 安装OpenCV3.0.0
Ubuntu安装OpenCV3.0.0 为了看看opencv3.0的HDR效果,尝试安装opencv3.0到ubuntu12.04上面,安装了好几次终于成功了. 参考博客: http://www.sa ...
- HDU 2896 病毒侵袭(AC自动机)
病毒侵袭 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- Fragment实现兼容手机和平板
Android手机的设置界面,点击一下Sound,可以跳转到声音设置界面,如下面两张图所示: 然后再来看一下Android Pad的设置界面,主设置页面和声音设置页面都是在一个 ...
- @import与link
本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别. 1. 老祖宗的差别.link属于XHTML标签,而@import完全是CSS提供的一种方式. link标签除了可以加载CSS外,还可 ...
- HDU 4858 项目管理 分块
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4858 题解: 下面说一个插入查询时间复杂度为sqrt(m)的算法: 对每个点定义两个值:val,su ...
- python 代码片段26
#coding=utf-8 ''' 使用空格而不是tab 因为无论在什么平台上开发,你的代码总是有可能会被移动或是复制到 另一不同架构的机器上,win32是4个空格,unix是8个空格,干脆 还是使用 ...
- BZOJ3515 : EvenPaths
首先拓扑排序,并将障碍点按拓扑序平均分成两半. 那么一条$0$到$1$的路径一定是形如: $0$->前一半点->后一半点->第一个后一半障碍点->后一半点->$1$. 对 ...
- change,propertychange,input事件小议
github上关于mootools一个issue的讨论很有意思,所以就想测试记录下.感兴趣的可以点击原页面看看. 这个问题来自IE(LTE8)中对checkbox和radio change事件的实现问 ...
- Node.js 手册查询-5-Ejs 方法
express 中使用 //设置模板目录 app.set('views', path.join(__dirname, 'views')); //设置模板引擎 app.set('view engine' ...