struts2标签
一、通用标签
1、property
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| default | false | false | String | The default value to be used if value attribute is null | |
| escape | false | true | false | Boolean | Deprecated. Use 'escapeHtml'. Whether to escape HTML |
| escapeCsv | false | false | false | Boolean | Whether to escape CSV (useful to escape a value for a column) |
| escapeHtml | false | true | false | Boolean | Whether to escape HTML |
| escapeJavaScript | false | false | false | Boolean | Whether to escape Javascript |
| escapeXml | false | false | false | Boolean | Whether to escape XML |
| value | false | <top of stack> | false | Object | Value to be displayed |
<s:property value="username" />输出变量名为username的变量,value中的值会被当成ognl表达式输出
<s:property value="'username'" />输出username,加了单引号不会当成ognl表达式而是当成字符串输出
<s:property value="admin" default="xiaoming" /> 输出变量名为admin的值,如果没有则默认为xiaoming
<s:property value="'<br/>'" escape="false" />
2、set
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| id | false | false | String | Deprecated. Use 'var' instead | |
| name | false | false | String | Deprecated. Use 'var' instead | |
| scope | false | action | false | String | The scope in which to assign the variable. Can be application, session, request, page, or action. |
| value | false | false | String | The value that is assigned to the variable named name | |
| var | false | false | String | Name used to reference the value pushed into the Value Stack | |
<s:set var="username" value="xiaomi" />默认为request和ActionContext
从request取值<s:property value="#request.username" />(debug标签可能在username还未放到request中时就已经形成了,所以有时候会看不到)
从ActionContext取值<s:property value="#username" />
设定范围<s:set var="username" value="xiaomi" scope="session" />
从设定范围取值<s:property value="#session.username" />
3、bean
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| id | false | false | String | Deprecated. Use 'var' instead | |
| name | true | false | String | The class name of the bean to be instantiated (must respect JavaBean specification) | |
| var | false | false | String |
Name used to reference the value pushed into the Value Stack |
|
调用无参构造函数构造一个User类示例:xiaomi<s:bean name="cn.orlion.model.User var="xiaomi"></s:bean>
调用无参构造函数构造一个User类示例:dami,初始化name为dami
<s:bean name="cn.orlion.model.User var="dami">
<s:param name="name" value="'dami'"></s:param> 这里value中的值必须要用单引号引起来,不然会被当成ognl表达式!!!
</s:bean>
4、include
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| value | true | false | String | The jsp/servlet output to include | |
<s:include value="/index.jsp" />
<s:include value="/index.jsp">
<s:param name="param1">value1</s:param> (value会被当成字符串处理)
<s:param name="param2">value2</s:param>
</s:include>
包含动态文件:
<s:set name="url" value="'/index.jsp'" />
<s:include value="%{#url}" />
5、param
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| name | false | false | String | Name of Parameter to set | |
| suppressEmptyParameters | false | false | false | Boolean | Whether to suppress empty parameters |
| value | false | The value of evaluating provided name against stack | false | String | Value expression for Parameter to set |
可以:<s:param name="param1" value="value1" />这里value1会被当成ognl表达式
也可以:<s:param name="param1" />value1</s:param>这里value1会被当成字符串
6、debug
不多作介绍
二、控制标签
1、if elseif else
<s:if test="%{false}">
<p>1</p>
</s:if>
<s:elseif test="%{true}">
<p>2</p>
</s:elseif>
<s:else>
<p>3</p>
</s:else>
2、iterator
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| begin | false | 0 | false | Integer | if specified the iteration will start on that index |
| end | false | Size of the 'values' List or array, or 0 if 'step' is negative | false | Integer | if specified the iteration will end on that index(inclusive) |
| id | false | false | String | Deprecated. Use 'var' instead | |
| status | false | false | false | Boolean | If specified, an instanceof IteratorStatus will be pushed into stack upon each iteration |
| step | false | 1 | false | Integer | if specified the iteration index will be increased by this value on each iteration. It can be a negative value, in which case 'begin' must be greater than 'end' |
| value | false | false | String | the iteratable source to iterate over, else an the object itself will be put into a newly created List | |
| var | false | false | String | Name used to reference the value pushed into the Value Stack |
遍历集合:(输出123)
<s:iterator value="{1,2,3}">
<s:property/>
</s:iterator>
自定义变量:(输出ABC)从集合中迭代取出赋值给val
<s:iterator value="{'a', 'b' , 'c'}" var="val">
<s:property value="#val.toUpperCase()"/>
</s:iterator>
使用status:
<s:iterator value="{'a' , 'b' , 'c'}" status="status">
<s:property/>
遍历过的元素的总数<s:property value="#status.count" />
当前元素的索引<s:property value="#status.index" />
当前是偶数<s:property value="#status.even" />
当前是奇数<s:property value="#status.odd" />
是否是第一个元素<s:property value="#status.first" />
是否是最后一个元素<s:property value="#status.last" />
</s:iterator>
遍历map
<s:iterator value="#{1:'a' , 2:'b' , 3:'c'}">
<s:property value="key" /> | <s:property value="value" />
</s:iterator>
<s:iterator value="#{1:'a' , 2:'b' , 3:'c'}" var="val">
<s:property value="#val.key" /> | <s:property value="#val.value" />
</s:iterator>
3、subset
Name |
Required |
Default |
Evaluated |
Type |
Description |
|---|---|---|---|---|---|
| count | false | false | Integer | Indicate the number of entries to be in the resulting subset iterator | |
| decider | false | false | org.apache.struts2.util.SubsetIteratorFilter.Decider | Extension to plug-in a decider to determine if that particular entry is to be included in the resulting subset iterator | |
| id | false | false | String | Deprecated. Use 'var' instead | |
| source | false | false | String | Indicate the source of which the resulting subset iterator is to be derived base on | |
| start | false | false | Integer | Indicate the starting index (eg. first entry is 0) of entries in the source to be available as the first entry in the resulting subset iterator | |
| var | false | false | String | The name to store the resultant iterator into page context, if such name is supplied |
三、UI标签
1、theme
主题,默认为xhtml,可以设置为simple/css_html/ajax
struts.xml中<constant name="theme" value="simple" />
struts2标签的更多相关文章
- struts2<s:property />标签
struts2的<property />标签是输出标签 其value属性是指定输出的内容,如果value属性没有写出来,则默认输出对象栈栈顶的元素. 例如,我们在对象栈中添加一个Perso ...
- struts2 <s:property/>标签的使用--输出时间格式转换
转载地址http://hi.baidu.com/nonyi_com/blog/item/acf1b8d74b6cf63e07088bc4.html 最近在使用struts2的<s:propert ...
- [Struts2] <s:property>标签
调用类中的属性,通过get方法调用,而非其属性名调用. 比如A类中有属性a1,a1的get方法是getA1Method(); 相应Action类中的get方法是getA1Action(). 那么需要通 ...
- struts2使用jsp和<s:property>标签获取json格式的返回数据
struts2使用jsp和<s:property>标签获取json格式的返回数据 1.struts2的action中 return "success"; 2.指向的返回 ...
- struts2 s:if标签以及 #,%{},%{#}的使用方法
<s:if>判断字符串的问题: 1.判断单个字符:<s:if test="#session.user.username=='c'"> 这样是从session ...
- struts2 s:if标签以及 #,%{},%{#}的使用方法等在资料整理
<s:if>判断字符串的问题: 1.判断单个字符:<s:if test="#session.user.username=='c'"> 这样是从session ...
- Struts2的OGNL标签详解
一.Struts2可以将所有标签分成3类: UI标签:主要用于生成HTML元素的标签. 非UI标签:主要用于数据库访问,逻辑控制等标签. Ajax标签:用于Ajax支持的标签. 对于UI标签,则有可以 ...
- struts2.0 s标签_小小鸟_百度空间
struts2.0 s标签 1. Struts2页面开发中常用标签使用说明 1.1.往action里传值的使用方式: <input name="userName" type= ...
- struts2:数据标签
目录 数据标签1. a标签2. set标签3. push标签4. bean/param标签5. date标签6. include标签7. url标签8. property标签9. debug标签10. ...
- Struts2之数据标签(二)
Struts2之数据标签(一):http://blog.csdn.net/u012561176/article/details/46848817 1.action标签:使用此标签能够同意在JSP页面中 ...
随机推荐
- (转)Android开发出来的APP在手机的安装路径是?
一.安装路径在哪? Android应用安装涉及到如下几个目录: system/app系统自带的应用程序,无法删除.data/app用户程序安装的目录,有删除权限.安装时把apk文件复制到此目录.dat ...
- java和android及IOS对接RSA加密经验
1.网上找的java生成RSA密钥对的例子,产生的字附串实际上是hax后和密钥串 你可以将他们当成静态字附串存在java代码里 2.android和java可以代码复用,IOS对接比较麻烦 3.IOS ...
- redis/php redis扩展 安装
作者:silenceper 日期:2013-10-03 原文地址: http://silenceper.com/archives/952.html 我是在CentOS 6.3 中进行的. 使用到的软件 ...
- 用MOS管防止电源反接的原理
电源反接,会给电路造成损坏,不过,电源反接是不可避免的.所以,我么就需要给电路中加入保护电路,达到即使接反电源,也不会损坏的目的. 一般可以使用在电源的正极串入一个二极管解决,不过,由于二极管有压降, ...
- 安装RPM包或者安装源码包
本系列的博客来自于:http://www.92csz.com/study/linux/ 在此,感谢原作者提供的入门知识 这个系列的博客的目的在于将比较常用的liunx命令从作者的文章中摘录下来,供自己 ...
- SSIS 错误
[OLE DB 源 [1]] 错误: SSIS 错误代码 DTS_E_OLEDBERROR.出现 OLE DB 错误.错误代码: 0x80040E14.已获得 OLE DB 记录.源:"Or ...
- python多线程的用法之一
import threadingimport time class thread_1(threading.Thread): sleep_time = 0 def __init__(self,id1): ...
- MediaWiki安装与配置(Ubuntu 10.4)
实验室准备发布一个网站,本来是准备外包给别人做的,后来自己调研了一下,发现也没有想象的复杂和困难,于是最近一周自己吭哧吭哧地把网站搭好了. 之所以使用Mediawiki,一是考虑到是以实验室发布,不想 ...
- Android(shape.xml)
shape用以在android设计中定义几何形状,这样简单的效果就不需要以来背景图片.基本的功能如下: <shape xmlns:android="http://schemas.and ...
- 作业二:Github注册账户过程
Github注册账户过程如下: Github的注册及使用说明: [1]http://www.aehyok.com/Blog/Detail/73.html [2] http://www.cnblogs. ...